Konstante: UTF8#-String
Mit Compilerversion >= 3.5.18.0 sind UTF-8 kodierte Stringliterale als Single-Byte-String mit Basis STRING
möglich.
Syntax:
UTF8#' <string literal> '
VAR CONSTANT constA : STRING := UTF8#'aäoöuü'; constB : STRING := UTF8#'Hello Allgäu $21'; // Hello Allgäu! END_VAR
Tipp
Um eine korrekte Überwachung zu gewährleisten, kann das Attribut 'monitoring_encoding' := 'UTF-8'
hinzugefügt werden.
UTF-8-Kodierung nur bei projektweiter Konfigurierung
Eine UTF-8-Kodierung wird verwendet, wenn die projektweit gültige Compile-Option UTF8-Kodierung für STRING aktiviert ist. Bibliotheksfunktionen und Add-ons orientieren sich dann auch gemäß diesem Setting.
Wenn Sie einzelne UTF-8 kodierte Strings verwenden, dann müssen Sie dafür Sorge tragen, dass diese überall dort, wo sie verwendet werden, auch richtig interpretiert werden. Eine String-Variable im OPC-Server wird zum Beispiel vor der Übertragung zu einem Client nach UTF-8 konvertiert, wenn das Setting nicht angewählt ist. Werte wie beispielsweise UTF8#'äöü'
würden dann falsch interpretiert werden. Ähnliche Probleme können bei der Ausgabe von Strings in der Visualisierung entstehen.