Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
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 = pas de compression, 1 = interne compact, 2 = interne rapide, -1 = GZIP compact, -2 = GZIP 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é retourne une valeur indiquant si et comment le BLOB est compressé. Vous pouvez comparer cette valeur aux constantes suivantes, placées dans le thème BLOB :
Constante | Type | Valeur | Comment |
GZIP méthode de compression compacte | Entier long | -1 | Compression GZIP la plus compacte (au détriment de la vitesse à laquelle la compression et la décompression sont effectuées) |
GZIP méthode de compression rapide | Entier long | -2 | Compression/décompression GZIP la plus rapide (au détriment du taux de compression) |
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 |
Quel que soit l'état de compression du BLOB, le paramètre tailleDécompressée retourne la taille du BLOB non compressé.
Le paramètre tailleCourante retourne la taille courante du BLOB. Si le BLOB est compressé, tailleCourante sera inférieur à tailleDécompressée. Si le BLOB n'est pas compressé, tailleCourante sera égal à tailleDécompressée.
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 paramètres>=2)
$2->:=0
Fin de si
Sinon
$0:=100-(($vlTailleCourante/$vlTailleDécompressée)*100)
Si(Nombre de paramètres>=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
Modifié : 4D v13
blob compression, Compression
4D - Langage ( 4D v20 R7)