Zeichenkodierung von Dateien umwandeln (UTF-8 mit BOM, Shift_JIS)
Wandeln Sie die Zeichenkodierung einer CSV- oder Textdatei um. Mit einem BOM öffnet Excel UTF-8 korrekt; alternativ nach Shift_JIS. Läuft vollständig im Browser.
Empfohlene Einstellungen je Zweck
Welche Kodierung passt, hängt vom Empfänger ab. Nutzen Sie dies als Orientierung.
| Ihr Vorhaben | Empfohlene Einstellung |
|---|---|
| Eine UTF-8-CSV direkt in Excel öffnen | UTF-8 mit BOM |
| In ein älteres Warenwirtschaftssystem importieren | Shift_JIS mit CRLF |
| Die Datei aus einem Programm lesen | UTF-8 ohne BOM und LF |
| In Excel für Mac öffnen | UTF-8 mit BOM |
| In Google Tabellen importieren | UTF-8, BOM optional |
| Text für ein altes E-Mail-Programm vorbereiten | ISO-2022-JP (JIS) |
Die Kodierungen in Kürze
Was dieses Werkzeug unterstützt und worauf zu achten ist.
| Kodierung | Hinweise |
|---|---|
| UTF-8 | Der heutige Standard; deckt alle Schriften und Emojis ab. |
| UTF-8 mit BOM | Drei Markierungsbytes am Anfang, damit Excel die Kodierung nicht falsch errät. |
| Shift_JIS | Lange auf japanischem Windows verwendet. Emojis und manche Kanji-Varianten fehlen. |
| EUC-JP | Japanische Kodierung, vor allem auf UNIX-Systemen verwendet. |
| ISO-2022-JP (JIS) | Die Kodierung japanischer E-Mails. Halbbreites Katakana ist nicht darstellbar. |
Warum CSV-Dateien als Zeichensalat erscheinen
Wenn Zeichen zerfallen, sobald Sie eine CSV in Excel öffnen, liegt die Ursache fast immer in einer Diskrepanz zwischen der Kodierung der Datei und derjenigen, die Excel erwartet. Fehlt in der CSV jeder Hinweis, nimmt Excel unter Windows an, der Inhalt sei in der lokalen Altkodierung — im japanischen Umfeld Shift_JIS. Web-Dienste und Programme schreiben CSV heute aber meist in UTF-8, und wenn eine UTF-8-Bytefolge als Shift_JIS gelesen wird, erscheinen zerfallene Zeichenketten wie «譁�蟄怜喧縺�».
Es gibt zwei Lösungen. Die eine ist, die Datei nach Shift_JIS umzuwandeln; die andere, sie in UTF-8 zu belassen und am Dateianfang ein BOM (Byte Order Mark, eine 3-Byte-Markierung) zu ergänzen. Mit BOM erkennt Excel «das ist UTF-8» und der Zeichensalat bleibt aus, ohne den Inhalt anzutasten. Dieses Werkzeug beherrscht beide Umwandlungen und bestimmt die Kodierung der Ausgangsdatei automatisch. Die Verarbeitung läuft vollständig im Browser, die Datei wird nie an einen Server gesendet.
So verwenden Sie die Kodierungsumwandlung
- Datei auswählen Ziehen Sie eine CSV- oder Textdatei per Drag-and-drop hinein oder klicken Sie zur Auswahl. Beim Einlesen werden Kodierung und Zeilenende automatisch bestimmt.
- Bestimmung in der Vorschau prüfen Lesen sich die Zeichen in der Vorschau richtig, war die Bestimmung erfolgreich. Wirken sie zerfallen, haben Sie möglicherweise etwas anderes als eine Textdatei gewählt.
- Ziel-Kodierung wählen Zum Öffnen in Excel «UTF-8» plus «BOM ergänzen»; für die Übernahme in ein älteres Fachsystem «Shift_JIS».
- Herunterladen Ein Druck auf «Umwandeln und herunterladen» speichert die Datei mit einem Kodierungs-Suffix am ursprünglichen Namen (_utf8bom, _sjis und so weiter).
Tipps für die Nutzung
- Soll die Datei nur in Excel geöffnet werden, ist UTF-8 mit BOM die sicherste Wahl: kein Zeichen geht verloren.
- Bei der Umwandlung nach Shift_JIS werden nicht darstellbare Zeichen durch „?“ ersetzt. Das Werkzeug listet sie vorher auf.
- Fügen Sie Dateien, die ein Programm einliest, kein BOM hinzu – es landet meist im Namen der ersten Spalte.
Wann Sie das brauchen
Eine aus einem Web-Dienst exportierte CSV zerfällt in Excel
Viele Dienste exportieren Umsatzdaten oder Mitgliederlisten in UTF-8; direkt in Excel geöffnet, zerfallen die Zeichen. Ein BOM zu ergänzen löst es.
Buchhaltungs- oder Lohnsystem nimmt die Datei nicht an
Ältere Fachsysteme akzeptieren manchmal nur CSV in Shift_JIS. Wandeln Sie die UTF-8-Datei nach Shift_JIS um, damit die Übernahme gelingt.
Beim Lesen einer CSV mit BOM per Programm stimmt die erste Spalte nicht
Das BOM sind drei unsichtbare Bytes und rutscht beim direkten Lesen in den ersten Feldnamen. Eine Umwandlung nach UTF-8 ohne BOM löst es.
Unterschiedliche Zeilenenden (CRLF/LF) lassen alles als eine Zeile erscheinen
Eine auf dem Mac mit LF erstellte Datei kann in einer alten Windows-Anwendung als eine einzige Zeile erscheinen, weil die Umbrüche ignoriert werden. Nach CRLF umwandeln und weitergeben löst es. Umgekehrt bleibt bei einer unter Windows erstellten CRLF-Datei in Unix-Befehlen ein ^M am Zeilenende — wandeln Sie dann nach LF um.
Den Inhalt einer als Zeichensalat erscheinenden Datei einsehen
Weil die Kodierung automatisch bestimmt und korrekt neu gelesen wird, sehen Sie in der Vorschau den Inhalt einer Datei, die sich sonst nicht lesen ließ.
Begriffe rund um Zeichenkodierung
- Zeichenkodierung
- Die Regel, die Zeichen den Bytefolgen im Rechner zuordnet. Unterscheiden sich die Regeln beim Schreiben und beim Lesen, entsteht Zeichensalat.
- BOM
- Kurz für Byte Order Mark, eine 3-Byte-Markierung (EF BB BF) am Dateianfang. Sie teilt Anwendungen mit, dass UTF-8 vorliegt, wird beim Lesen per Programm aber mitunter als überflüssiges Zeichen behandelt.
- Zeilenende
- Die Bytes, die das Ende einer Zeile anzeigen. Windows nutzt CRLF (2 Byte), Mac und Linux LF (1 Byte) — über Systemgrenzen hinweg erscheint deshalb alles als eine Zeile oder es entstehen zusätzliche Zeilen.
- Shift_JIS
- Eine Kodierung, die in der japanischen Windows-Welt lange weit verbreitet war. Sie umfasst weniger Zeichen als UTF-8 und kann Emoji sowie manche Zeichenvarianten nicht darstellen.
- Zeichensalat (Mojibake)
- Der Zustand, in dem nach dem Lesen mit der falschen Kodierung sinnlose Zeichen aneinanderreihen. Eine Folge wie «譁�蟄怜喧» ist das typische Bild, wenn UTF-8 als Shift_JIS gelesen wird.
Häufige Fragen
Übrigens – Was unleserlicher Text verrät
Unleserlicher Text folgt erkennbaren Mustern. Ketten unzusammenhängender Kanji entstehen, wenn UTF-8-Bytes als Shift_JIS gelesen werden: Ein japanisches Zeichen belegt in UTF-8 drei Bytes, paarweise neu gelesen ergeben sie völlig andere Zeichen. Der umgekehrte Fehler liefert Reihen von Ersatzzeichen, weil die Bytefolgen ungültig sind.
Das BOM wurde für UTF-16 erfunden, wo es die Bytereihenfolge angibt. UTF-8 kennt diese Ambiguität nicht, weshalb der Unicode-Standard davon abrät – in der Windows-Welt hat es dennoch überlebt, weil Programme, die die Kodierung nur erraten können, eine ausdrückliche Markierung brauchten.