Encoding Begriff

Unter Encoding versteht man die Art und Weise, wie Zeichen in einem Datenstrom gespeichert werden (z.B. in einer Datei).

Wird z.B. eine Datei mit einem anderen Encoding gelesen als sie gespeichert wurde, treten meist Zuordnungsfehler auf.
Das kommt häufig beim Import von Lieferantenstammdaten vor und ist an falsch dargestellten Umlauten zu erkennen. In einem solchen Fall sollte dann das Encoding des FLOWWER-Datenimports umgestellt und die Vorschau erneut geladen werden.

Hintergrund

Ein Byte besteht aus 8 Bit und kann somit einen von 256 (2^8) verschiedenen Werten repräsentieren.
Damit ist ein Byte ausreichend, um traditionelle Encodings wie ASCII (128 Zeichen) zu speichern. Das ist möglich, weil ASCII nur verhältnismäßig wenige, einfache Zeichen wie englische Buchstaben, Zahlen und grundlegenden Symbole enthält. Mit diesem Umfang an Zeichen lassen sich englischsprachige Inhalte noch gut darstellen. Jedoch schon bei deutschen Texten bzw. Umlauten sind Tricks (z.B. aus Ä wird Ae, aus ö wird oe) notwendig. Sollten kyrillische, hebräische, etc. Zeichen benötigt werden, reichen 256 Zeichen nicht mehr aus.

erster Lösungsansatz

Um den Rahmen von einem Byte pro Zeichen nicht zu sprengen, wurden für die jeweilige Zeichengruppen ein Encoding standardisiert bzw. genormt. Bekannte Vertreter sind die ISO 8859 und die Windows-Codepages. Beispielweise ist das Encoding für Zeichen des kyrillischen Alphabets in ISO 8859-5 und in der Windows Codepage-1251 festgelegt. Damit wurde das Problem der 8-Bit Limitierung umgangen, jedoch das Speichern/Lesen-Problem bleibt bestehen.

Die Lösung: mehrere Speicherbytes pro Zeichen

Als Lösungsansatz für das ‘Speichern/Lesen’-Problem wird ein komplexeres Encoding benötigt, welches mehr als 256 Zeichen unterstützt. Ein Beispiel dafür ist das Encoding “UTF-8”, welches sogar variable Längen nutzt und je nach Zeichen 1 bis 4 Byte verwendet. Dies ermöglicht es, Millionen von Zeichen (darunter auch Zeichen aus verschiedenen Schriftsystemen) zu codieren und gleichzeitig Speicherplatz zu sparen.