0 Daumen
304 Aufrufe

Die ersten 128 Zeichen von ISO-8859 sind ja genau die gleichen, wie beim Unicode UTF-8. Kann ich also dann eine Textdatei mit ISO codieren und mit UTF-8 auslesen? Oder geht das nicht? Wenn nicht, wieso nicht? Hoffe ihr könnt mir helfen

Avatar von

1 Antwort

0 Daumen

Hallo Sheymxxn,

Kann man einen Text mit ISO 8859 codieren und dann mit UTF-8 auslesen?

nein - im Allgemeinen geht das nicht. Zwar ist bei Zeichen mit Codes kleiner 0x80 in den Encodings von ISO-8859 und UTF-8 kein Unterschied, aber es können ja auch Zeichen mit einem höheren Code im Text stehen. Das gilt z.B. für alle Umlaute (im deutschen) und für das 'ß'. Ein 'ü' welches mit ISO-8859 geschrieben wird, hätte auf dem Zielmedium den Code 0xFC. Wird dieses Byte mit UTF-8 gelesen, würde dies im besten Fall als der Start einer 6 Byte langen UTF-8-Sequenz interpretiert. Hätte dann das nächste Byte im Bit7 eine 0 stehen, was sehr wahrscheinlich ist, würde der UTF-8-Lese-Algorithmus bereits einen Fehler liefern.

Die Worte 'für' oder 'über' hätten bereits den oben beschriebenen Effekt.

Wenn Du garantieren kannst, dass im Text nur Codes kleiner 0x80 vorkommen, würde es natürlich funktionieren. Aber nur dann!

Gruß Werner

Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community