# LGF_DecodeUtf8 (FC / 1.0.0)

Übersicht

Autor: Siemens Online Support

## Kurzbeschreibung

Dekodiert einen UTF-8 kodierten Byte-Stream in einen WString

### Baustein Schnittstelle

| LGF_DecodeUtf8 (FC) |
--- | --- | ---
Array[*] of Byte |  |  | byteStream |  | Ret_Val |  |  | Word
DInt |  |  | startPos |  |  |  |  |
UInt |  |  | count |  |  |  |  |
WString |  |  | decodedString |  |  | WString

### Input Parameter

Bezeichner | Datentyp | Beschreibung
--- | --- | ---
byteStream | Array[*] of Byte | UTF-8 kodierter Bytestrom
startPos | DInt | Position im Bytestrom, von der aus die Dekodierung beginnen soll
count | UInt | Anzahl der zu dekodierenden Zeichen (nicht Bytes); 0: Bytestrom wird bis zum Ende dekodiert

### Output Parameter

Bezeichner | Datentyp | Beschreibung
--- | --- | ---
Ret_Val | Word | 16#0000 - 16#7FFF: Status des FC, 16#8000 - 16#FFFF: Fehleridentifikation

### In/Out Parameter

Bezeichner | Datentyp | Beschreibung
--- | --- | ---
decodedString | WString | Dekodierter String

### Status & Error Meldungen

Code / Wert | Bezeichner / Beschreibung
--- | ---
16#0000 | STATUS_NO_ERROR Status: Kein Fehler
16#7FFD | WARN_UNSUPPORTED_CHAR Warnung: Bytestrom wurde dekodiert, enthält aber nicht unterstützte Zeichen
16#7FFE | WARN_STREAM_EXCEEDS_MAX_LEN Warnung: Bytestream überschreitet die maximale Länge des Strings beim Parameter `decodedString`
16#8201 | ERR_START_POS_OUTSIDE Fehler: Parameter `startPos` liegt außerhalb der Array-Grenzen
16#8202 | ERR_COUNT_EXCEEDS_BOUNDS Fehler: Parameter `count` liegt außerhalb der Array-Grenzen
16#8203 | ERR_COUNT_EXCEEDS_MAX_LEN Fehler: Parameter `count` überschreitet die max. Länge eines WString

## Änderungshistorie

Version & Datum | Änderungsbeschreibung
--- | ---
| 1.0.0 | Online Support
| 2022-12-16 | First released version