STRING_TO_CSVFIELD
![STRING_TO_CSVFIELD 1:](Images/gif/35894283__de__Web.gif)
Die Funktion konvertiert den Wert einer SPS-Stringvariablen in ein Datenfeld im CSV-Format als String. Einfache Einführungszeichen im Quellstring werden durch doppelte Einführungszeichen ersetzt. Beim gesetzten bQM-Parameter (QM = quotation marks) werden auch die äußeren (das CSV-Datenfeld einschließenden) Einführungszeichen hinzugefügt. 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_CSVMemBufferWriter verwendet um Datensätze im SPS-Speicher im CSV-Format zu erzeugen. Im nächsten Schritt kann der Speicherinhalt dann in die Datei geschrieben werden.
Der Quellstring darf keine Binärdaten enthalten. Binärdaten mit dem Wert Null würden den String an der falschen Stelle terminieren und abschneiden! Um Binärdaten zu konvertieren verwenden Sie bitte die Funktion: ARG_TO_CSVFIELD.
FUNCTION STRING_TO_CSVFIELD : T_MaxString
VAR_INPUT
VAR_INPUT
in : T_MaxString;
bQM : BOOL;
END_VAR
in: Quellstring dessen Wert in ein Datenfeld im CSV-Format konvertiert werden soll (Typ: T_MaxString).
bQM: Bei TRUE an diesem Eingang werden dem Ergebnisstring auch die einschließenden Einführungszeichen hinzugefügt.
bQM | Beschreibung | Quellstring | Ergebnisstring | CSV-Konform |
---|---|---|---|---|
FALSE | 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, Semikolon, Komma (US-CSV-Format) oder Binärdaten enthalten. |
|
|
|
'Module_XA5' | 'Module_XA5' | Ja | ||
'123456' | '123456' | 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 | Quellstring, der mit den einschließenden Einführungszeichen versehen wird, darf auch die nicht-druckbaren Steuerzeichen, Einführungszeichen, Semikolon oder Komma (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 := STRING_TO_CSVFIELD( 'Module_"ALFA_$05"_6', TRUE );
s2 := STRING_TO_CSVFIELD( 'Module_50', FALSE );
Das Ergebnis:
s1 = '"Module_""ALFA_$05""_6"'
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) |