4D v16.3

TEXT TO BLOB

Home

 
4D v16.3
TEXT TO BLOB

TEXT TO BLOB 


 

TEXT TO BLOB ( Text ; BLOB {; TextFormat {; Offset I *}} )  
Parameter Typ   Beschreibung
Text  String in Text zum Schreiben ins BLOB
BLOB  BLOB in BLOB zum Empfangen des Textes
TextFormat  Lange Ganzzahl in Format und Zeichensatz des Textes
Offset I *  Variable, Operator in Versatz im BLOB (in Bytes) oder * zum Anfügen des Wertes
in Ohne *: Neuer Versatz nach Schreiben in BLOB

Der Befehl TEXT TO BLOB schreibt den Wert Text in BLOB.

Der Parameter TextFormat legt das interne Format und den Zeichensatz des zu schreibenden Textwertes fest. Übergeben Sie dazu eine der folgenden vordefinierten Konstanten unter dem Thema BLOB:

Konstante Typ Wert
Mac C string Lange Ganzzahl 0
Mac Pascal string Lange Ganzzahl 1
Mac text with length Lange Ganzzahl 2
Mac text without length Lange Ganzzahl 3
UTF8 C string Lange Ganzzahl 4
UTF8 text with length Lange Ganzzahl 5
UTF8 text without length Lange Ganzzahl 6

Geben Sie den Parameter TextFormat nicht an, verwendet 4D standardmäßig das Format Mac C string. In Anwendungen, die mit 4D v11 erstellt wurden, arbeitet 4D standardmäßig mit dem Unicode Zeichensatz (UTF8) zur Textverwaltung, deshalb wird empfohlen, diesen Zeichensatz zu verwenden.

Hinweise:

  • Die “UTF8” Konstanten sind nur verwendbar, wenn die Anwendung im Unicode Modus arbeitet.
  • Die “Mac” Konstanten können nicht mit Text größer als 32 KB arbeiten.
  • Wollen Sie mit einem anderen Zeichensatz als UTF8 arbeiten, verwenden Sie den Befehl CONVERT FROM TEXT.

Die verschiedenen Formate werden im folgenden beschrieben:

TextformatBeschreibung und Beispiele
C String Der Text endet mit dem Zeichen NULL (ASCII Code $00)
UTF8"" --> $00
"Café" --> $43 61 66 C3 A9 00
Mac"Café" --> $43 61 66 8E 00
Pascal StringDem Text ist eine 1-Byte Länge vorangestellt
UTF8-
Mac"" --> $00
"Café" --> $04 43 61 66 8E
Text mit LängeDem Text ist eine 4-Byte (UTF8) oder 2-Byte Länge (Mac) vorangestellt
UTF8"" --> $00 00 00 00
"Café" --> $00 00 00 05 43 61 66 C3 A9
Mac"" --> $00 00
"Café" --> $00 04 43 61 66 8E
Text ohne LängeDer Text besteht nur aus seinen Zeichen
UTF8"" --> Kein Wert
"Café" --> $43 61 66 C3 A9
Mac"" --> Kein Wert
"Café" --> $43 61 66 8E

Geben Sie den optionalen Parameter * an, wird der Wert vom Typ Zahl an das BLOB angefügt und die Größe des BLOB entsprechend erweitert. Mit dem optionalen Parameter * können Sie jede Zahl vom Typ Ganzzahl, Lange Ganzzahl, Zahl oder Text (siehe andere BLOB Befehle) sequentiell in einem BLOB speichern, solange der Speicher für das BLOB ausreicht.

Geben Sie den optionalen Parameter * oder den Parameter Offset nicht an, wird der Textwert am Anfang des BLOB gespeichert, der bisherige Inhalt wird überschrieben. Die Größe des BLOB wird entsprechend angepasst.

Übergeben Sie den Parameter Offset, wird der Textwert im BLOB am Byte-Versatz geschrieben (von Null ausgehend). Egal, wo Sie den Wert schreiben, die Größe des BLOB wird gemäß der übergebenen Position erhöht (bei Bedarf bis zur Größe des Textes). Neu zugewiesene Bytes, die Sie nicht schreiben, werden auf Null initialisiert.

Nach dem Aufruf wird die Variable Offset zurückgegeben, erhöht um die Anzahl der geschriebenen Bytes. Von daher können Sie dieselbe Variable mit einem anderen BLOB Befehl zum Schreiben eines anderen Wertes verwenden.

Nach Ausführen dieses Code:

 SET BLOB SIZE(vxBlob;0)
 C_TEXT(vtValue)
 vtValue:="Café" ` Länge von vtValue ist 4 Bytes
 TEXT TO BLOB(vtValue;vxBlob;Mac C string` BLOB Größe wird 5 Bytes
 TEXT TO BLOB(vtValue;vxBlob;Mac Pascal string` BLOB Größe wird 5 Bytes
 TEXT TO BLOB(vtValue;vxBlob;Mac text with length` BLOB Größe wird 6 Bytes
 TEXT TO BLOB(vtValue;vxBlob;Mac text without length` BLOB Größe wird 4 Bytes
 TEXT TO BLOB(vtValue;vxBlob;UTF8 C string` BLOB Größe wird 6 Bytes
 TEXT TO BLOB(vtValue;vxBlob;UTF8 text with length` BLOB Größe wird 9 Bytes
 TEXT TO BLOB(vtValue;vxBlob;UTF8 text without length` BLOB Größe wird 5 Bytes



Siehe auch 

BLOB to integer
BLOB to longint
BLOB to real
BLOB to text
CONVERT FROM TEXT
INTEGER TO BLOB
LONGINT TO BLOB
REAL TO BLOB

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: BLOB
Nummer: 554

This command can be run in preemptive processes

 
GESCHICHTE 

Geändert: 4D v11 SQL

 
SCHLÜSSELWÖRTER 

UTF8, Text

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)