4D v12.4LIRE PROPRIETES BLOB |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v12.4
LIRE PROPRIETES BLOB
|
LIRE PROPRIETES BLOB ( blob ; compressé {; tailleDécompressée {; tailleCourante}} ) | ||||||||
Paramètre | Type | Description | ||||||
blob | BLOB |
![]() |
BLOB sur lequel vous voulez obtenir des informations | |||||
compressé | Entier long |
![]() |
0 = blob n'est pas compressé, 1 = blob compressé méthode compacte, 2 = blob compressé méthode rapide | |||||
tailleDécompressée | Entier long |
![]() |
Taille du BLOB décompressé en octets | |||||
tailleCourante | Entier long |
![]() |
Taille courante du BLOB en octets | |||||
LIRE PROPRIETES BLOB retourne des informations sur le BLOB blob.
Le paramètre compressé vous indique si le BLOB est compressé ou non et retourne une des valeurs suivantes :
Constante | Type | Valeur | Commentaire |
Méthode de compression compacte | Entier long | 1 | Compression interne la plus compacte (au détriment de la vitesse à laquelle la compression et la décompression sont effectuées). Méthode par défaut. |
Méthode de compression rapide | Entier long | 2 | Compression/décompression interne la plus rapide au détriment du taux de compression (une fois compressé, le BLOB prend plus de place) |
Non compressé | Entier long | 0 | Pas de compression |
Note : Les constantes ci-dessus sont fournies par 4D.
Quel que soit l'état de compression du BLOB, le paramètre tailleDécompressée retourne la taille du BLOB non compressé.Référez-vous aux exemples des commandes COMPRESSER BLOB et DECOMPRESSER BLOB.
Lorsqu'un BLOB est compressé, la méthode projet suivante vous permet de connaître le taux de place gagnée en compressant le BLOB :
` Méthode projet Place gagnée par compression
` Place gagnée par compression (Pointeur {; Pointeur } ) -> Entier long
` Place gagnée par compression ( -> BLOB {; -> octetsGagnés } ) -> Pourcentage
C_POINTEUR($1;$2)
C_ENTIER LONG($0;$vlCompressé;$vlTailleDécompressée;$vlTailleCourante)
LIRE PROPRIETES BLOB($1->;$vlCompressé;$vlTailleDécompressée;$vlTailleCourante)
Si($vlTailleDécompressée=0)
$0:=0
Si(Nombre de parametres>=2)
$2->:=0
Fin de si
Sinon
$0:=100-(($vlTailleCourante/$vlTailleDécompressée)*100)
Si(Nombre de parametres>=2)
$2->:=$vlTailleDécompressée-$vlTailleCourante
Fin de si
Fin de si
Lorsque cette méthode est placée dans votre application, vous pouvez écrire :
` ...
COMPRESSER BLOB(vxBlob)
$vlPourcent:=Place gagnée par compression(->vxBlob;->vlTailleBlob)
ALERTE("La compression permet de gagner "+Chaine(vlTailleBlob)+" octets, donc "+Chaine($vlPourcent;"#0%")+" d'espace.")
Produit : 4D
Thème : BLOB
Numéro :
536
Nom intl. : BLOB PROPERTIES
Créé : 4D v6
COMPRESSER BLOB
DECOMPRESSER BLOB
blob compression, Compression***