CSVFIELD_TO_STRING
![CSVFIELD_TO_STRING 1:](Images/gif/35727883__de__Web.gif)
Die Funktion konvertiert ein Datenfeld im CSV-Datenfeldformat der als Quellstring vorliegt in einen Wert im SPS-Stringformat. Doppelte Einführungszeichen im Quellstring werden durch ein einfaches Einführungszeichen ersetzt. Beim gesetzten bQM-Parameter (QM = quotation marks) werden auch die äußeren (das Datenfeld einschließenden) Einführungszeichen aus dem Quellstring entfernt. Beim Erfolg liefert die Funktion den konvertierten String als Ergebnis zurück. Die Funktion liefert einen Leerstring wenn bei der Konvertierung ein Fehler aufgetreten ist aber nur dann wenn der Quellstring auch kein Leerstring war.
Die Funktion wird normalerweise zusammen mit dem Funktionsbaustein FB_CSVMemBufferReader verwendet um Datensätze im SPS-Speicher die im CSV-Format vorliegen zu lesen (zu interpretieren). Vorher werden die CSV-Datensätze meistens aus einer Datei in den SPS-Speicher eingelesen. Der Quellstring darf keine Binärdaten enthalten. Binärdaten mit dem Wert Null werden den String an der falschen Stelle terminieren und abschneiden! Um Datenfelder mit Binärdaten zu konvertieren verwenden Sie bitte die Funktion: CSVFIELD_TO_ARG.
FUNCTION CSFIELD_TO_STRING : T_MaxString
VAR_INPUT
VAR_INPUT
in : T_MaxString;
bQM : BOOL;
END_VAR
in: Quellstring mit einem Datenfeld im CSV-Format der in einen Wert im SPS-Stringformat konvertiert werden soll (Typ: T_MaxString).
bQM: Bei TRUE an diesem Eingang werden aus dem Quellstring auch die einschließenden Einführungszeichen entfernt.
bQM |
Beschreibung |
Quellstring |
Ergebnisstring |
CSV-Konform |
---|---|---|---|---|
FALSE |
Ein Quellstring , der nicht mit den einschließenden Einführungszeichen versehen wird sollte möglichst nur aus Buchstaben und Zahlen bestehen. In diesem Fall darf der Quellstring keine nicht-druckbaren Steuerzeichen, Einführungszeichen, Semikolons, Kommas (US-CSV-Format) oder Binärdaten enthalten. |
'Module_XA5' '123456' '' |
'Module_XA5' '123456' '' |
Ja Ja Ja |
'A""""B' |
'A""B' |
Nein | ||
'A""B' |
'A"B' |
Nein | ||
';' |
';' |
Nein | ||
'$R$N' |
'$R$N' |
Nein | ||
'AB$00CD' |
'AB' (String wurde abgeschnitten) |
Nein | ||
TRUE |
Ein Quellstring , der mit den einschließenden Einführungszeichen versehen wird darf auch die nicht-druckbaren Steuerzeichen, Einführungszeichen, Semikolons, Kommas (US-CSV-Format) enthalten. Binärdaten sind nicht zulässig. |
'"Module_XA5"' |
'Module_XA5' |
Ja |
'"123456"' |
'123456' |
Ja |
| |
'""' |
'' |
Ja |
| |
'"A""""B"' |
'A""B' |
Ja |
| |
'"A""B"' |
'A"B' |
Ja |
| |
'";"' |
';' |
Ja |
| |
'"$R$N"' |
'$R$N' |
Ja |
| |
'"AB$00CD"' |
'AB' (String wurde abgeschnitten) |
Nein |
|
Beispiel:
PROGRAM MAIN
VAR
s1 : STRING;
s2 : STRING;
END_VAR
s1 := CSVFIELD_TO_STRING( '"ab_$04_$05_cd-""ALFA""_5"', TRUE );
s2 := CSVFIELD_TO_STRING( 'Module_50', FALSE );
Das Ergebnis:
s1 = 'ab_$04_$05_cd-"ALFA"_5'
s2 = 'Module_50'
Weitere Informationen finden Sie hier: Beispiel: Schreiben/lesen einer CSV-Datei.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken (Kategoriegruppe) |
---|---|---|
TwinCAT v3.1.0 | PC oder CX (x86, x64, ARM) | Tc2_Utilities (System) |