InfoCenter

UTF-16

Das Kodierungsformat UTF-16 ist das älteste aller Unicode-Formate und ist optimiert für die am häufigsten gebrauchten Zeichen der Basic Multilingual Plane (BMP). Unicode Zeichen, deren Code sich im Bereich U+0000 bis U+FFFF befindet, liegen in der Basic Multilingual Plane. Dies sind lateinische und andere europäische Schriften und deren Symbole, afrikanische und asiatische Schriften. Die Zeichen in diesem Bereich werden direkt auf die zwei Bytes (16 Bits) einer UTF-16 Code-Unit abgebildet.

Damit ist die Kodierung UTF-16 am Besten für Zeichen dieses Bereichs geeignet, auch wenn sie bei reinen ASCII oder ANSI Texten gegenüber einer ANSI oder auch UTF-8 Kodierung doppelt so viel Speicherplatz benötigt, da für die ASCII Zeichen in beiden Fällen jeweils nur ein Byte statt zwei Bytes verwendet werden.

Verwendung und Verbreitung

UTF-16 Little Endian ist die in Windows 2000 / XP / 2003 / Vista / 7 / 10 und in den sonstigen Windows Versionen dazwischen genutzte interne Representation von Text und das Format, was im Windows Editor unter der Kodierung "Unicode" verstanden wird. Auch andere Betriebssysteme wie macOS oder Symbian nutzen UTF-16 als Standardkodierung.

Byte Order Mark

Um einen Text im Format UTF-16 zu speichern, kann sowohl Big Endian als auch Little Endian verwendet werden. Der Unterschied besteht in der Frage, ob die Byte-Einheiten von links nach rechts oder von rechts nach links geschrieben werden sollen. Die Byte Order Mark (BOM) bei UTF-16 Big Endian ist ensprechend FE FF und bei UTF-16 Little Endian FF FE.

Falls man eine UTF-16 kodierte Datei in einem Editor anschaut, der die Byte Order Mark und das Format nicht richtig interpretieren kann und die Datei somit zum Beispiel als Latin-1 kodierte Datei interpretiert, werden für UTF16-BE die Zeichen "þÿ" angezeigt und für UTF16-LE die Zeichen "ÿþ".