4D v16.3

LIRE PROPRIETES BLOB

Accueil

 
4D v16.3
LIRE PROPRIETES BLOB

LIRE PROPRIETES BLOB 


 

LIRE PROPRIETES BLOB ( blob ; compressé {; tailleDécompressée {; tailleCourante}} )  
Paramètre Type   Description
blob  BLOB in BLOB sur lequel vous voulez obtenir des informations
compressé  Entier long in 0 = pas de compression, 1 = interne compact, 2 = interne rapide, -1 = GZIP compact, -2 = GZIP rapide
tailleDécompressée  Entier long in Taille du BLOB décompressé en octets
tailleCourante  Entier long in 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.")



Voir aussi  

COMPRESSER BLOB
DECOMPRESSER BLOB

 
PROPRIÉTÉS 

Produit : 4D
Thème : BLOB
Numéro : 536
Nom intl. : BLOB PROPERTIES

 
HISTORIQUE 

Créé : 4D v6
Modifié : 4D v13

 
MOTS-CLÉS 

blob compression, Compression

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)