Skip to main content

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> '

Beispiel 183. Konstantendeklaration
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.