Skip to main content

Constant: UTF8# String

With compiler version >= 3.5.18.0, UTF-8 encoded string literals are possible as a single-byte string with base STRING.

Syntax:

UTF8#' <string literal> '

Example 183. Constant declaration
VAR CONSTANT
    constA : STRING := UTF8#'aäoöuü';
    constB : STRING := UTF8#'Hello Allgäu $21'; // Hello Allgäu!
END_VAR


Tip

To ensure correct monitoring, the 'monitoring_encoding' := 'UTF-8' attribute can be added.

UTF-8 encoding only for project-wide configuration

A UTF-8 encoding is used if the project-wide compile option UTF8 encoding for STRING is enabled. Library functions and add-ons are then also oriented according to this setting.

If you use single UTF-8 encoded strings, then you need to make sure that they are interpreted correctly wherever they are used. For example, a string variable in the OPC server will be converted to UTF-8 before being transferred to a client if the setting is not selected. Values such as UTF8#'äöü' would then be misinterpreted. Similar problems can arise when outputting strings in the visualization.