dedlfix: einige Fragen zur Zeichenkodierung

Beitrag lesen

Tach!

Wie soll die Software die Zeichencodierung automatisch erkennen, wenn die Codierung garnicht in den Metadaten festgehalten wurde?

Sie rät. Vermutlich so: Ist es gültiges UTF-8? Gibts eine UTF-BOM? Wenn nein, wird es wohl die im Windows eingestellte Kodierung sein.

Codierungsproblem (doppelte UTF8-Codierung) in Attribut: description.

Hast du eine Ahnung was konkret mit "doppelte UTF8-Codierung" gemeint sein könnte?

Ja, da hat jemand einen UTF-8-kodierten Text als (vermutlich) ISO-8859-1 gelesen und nochmal nach UTF-8 konvertiert.

ISO-8859-1 ist eine Ein-Byte-Kodierung, jedes Byte = ein Zeichen, UTF-8-Sequenzen haben zwei oder mehr Byte bei bestimmten Zeichen, die Bytes wurden einzeln als Zeichen interpretiert und gemäß UTF-8 mit Bytesequenzen geschrieben.

Man kann sowas zu erkennen versuchen, indem man einmal auf gültiges UTF-8 testet, den Text dann nach ISO-8859-1 kodiert und nochmal testet, ob es immer noch gültiges UTF-8 ist.

Es ist recht unwahrscheinlich (aber nicht komplett auszuschließen), dass UTF-8-Byte-Sequenzen von Nicht-ASCII-Zeichen sinnvolle ISO-8859-1-Zeichenfolgen ergeben. Deshalb nimmt man an, dass wenn der einmal dekodierte Text immer noch gültige UTF-8-Sequenzen enthält, doppelt kodiert wurde.

Lösung des Problems: Lesen als UTF-8, Umkodieren oder Speichern als ISO-8859-1. Jetzt hat man ein nur einmal kodiertes UTF-8-Dokument.

dedlfix.