TEXTE VERS BLOB

4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant

version 6.0


TEXTE VERS BLOB (texte; blob; formatTexte{; offset | *})

ParamètreTypeDescription
texteAlphaValeur de type Texte à écrire dans BLOB
blobBLOBBLOB devant recevoir la valeur de type Texte
formatTexteNumérique0  Chaîne en C
1  Chaîne pascal
2  Texte avec longueur
3  Texte sans longueur
offset | *Variable | *Offset (en octets) dans le BLOB ou
* pour ajouter la valeur à la fin du BLOB
Nouvel offset après l'écriture si * omis

Description

La commande TEXTE VERS BLOB écrit la valeur de type Texte texte dans le BLOB blob.

Le paramètre formatTexte définit le format interne de la valeur de type Texte à écrire. Vous passez une des constantes fournies par 4e Dimension :

ConstanteTypeValeur
Chaîne en CEntier long0
Chaîne pascalEntier long1
Texte avec longueurEntier long2
Texte sans longueurEntier long3

Le tableau suivant décrit chacun de ces formats :

Format texteDescription & Exemples
Chaîne en C Le texte se termine par un caractère NULL (code ASCII $00).
"" $00
"Hello World!" $48 65 6C 6C 6F 20 57 6F 72 6C 64 21 00
Chaîne pascalLe texte est précédé d'un octet de longueur.
"" $00
"Hello World!" $0C 48 65 6C 6C 6F 20 57 6F 72 6C 64 21
Texte avec longueurLe texte est précédé de 2 octets de longueur.
"" $00 00
"Hello World!" $00 0C 48 65 6C 6C 6F 20 57 6F 72 6C 64 21
Texte sans longueurLe texte est composé seulement de ses caractères.
"" Pas de valeurs
"Hello World!" $48 65 6C 6C 6F 20 57 6F 72 6C 64 21

Note : Cette commande accepte des expressions de type Texte (déclarées avec C_TEXTE) et de type Alpha (déclarées avec C_ALPHA). Notez bien que les variables de type Texte peuvent contenir jusqu'à 32 000 caractères et que les variables de type Alpha peuvent contenir un nombre de caractères fixe, défini lors de leur déclaration (255 caractères maximum).

Si vous passez le paramètre optionnel *, la valeur de type Texte est ajoutée à la fin du BLOB et la taille de blob est modifiée en conséquence. Ainsi, à l'aide du paramètre optionnel *, vous pouvez stocker les unes derrière les autres autant de valeurs de type Entier, Entier long, Numérique ou Texte (référez-vous aux autres commandes sur les BLOBs) que vous voulez dans un BLOB, la seule limite étant celle de la mémoire disponible.

Si vous ne passez pas le paramètre optionnel * ni de variable dans le paramètre offset, la valeur de type Texte est stockée au début de blob en remplaçant son contenu précédent, et la taille du BLOB est modifiée en conséquence.

Si vous passez une variable dans le paramètre offset, la valeur de type Texte est écrite à l'offset offset, exprimé en octets (à partir de zéro), du BLOB. Quel que soit l'endroit où vous placez la valeur, la taille du BLOB sera augmentée si nécessaire en fonction de l'emplacement que vous avez défini (plus jusqu'à la taille du texte le cas échéant). Les octets redéfinis (autres que ceux que vous venez d'écrire) sont initialisés à la valeur zéro.

Après l'exécution de la commande, la variable du paramètre offset est incrémentée du nombre d'octets ayant été écrits. Vous pouvez par conséquent réutiliser la même variable avec une autre commande d'écriture de BLOB afin de placer une autre valeur juste après celle que vous venez d'écrire.

Exemple

Après l'exécution de ce code :

   FIXER TAILLE BLOB (vxBlob;0)
   C_TEXTE (vtValeur)
   vtValeur := "Hello World!"  ` La longueur de vtValeur est de 12 octets
   TEXTE VERS BLOB (vtValeur;vxBlob;Chaîne en C)  ` La taille du BLOB devient 13 octets
   TEXTE VERS BLOB (vtValeur;vxBlob;Chaîne pascal)  ` La taille du BLOB devient 13 octets
   TEXTE VERS BLOB (vtValeur;vxBlob;Texte avec longueur)  ` La taille du BLOB devient 14 octets
   TEXTE VERS BLOB (vtValeur;vxBlob;Texte sans longueur)  ` La taille du BLOB devient 12 octets

Référence

BLOB vers entier, BLOB vers entier long, BLOB vers reel, BLOB vers texte, ENTIER LONG VERS BLOB, ENTIER VERS BLOB, REEL VERS BLOB.


4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant