Was ein Zeichensatz ist
Eine Datei besteht aus Bytes. Der Zeichensatz legt fest, welche Bytes welche Zeichen bedeuten. Buchstaben und Ziffern
sind fast überall gleich; Umlaute, Akzente, das Eurozeichen und jede nicht-lateinische Schrift nicht. In UTF-8 ist
ü zwei Bytes, C3 BC; in Windows-1252 – dem, was Windows für westeuropäischen Text lange
verwendet hat – ist es ein Byte, FC.
Die Anzeichen lesen
| Sie sehen | Statt | Was passiert ist |
|---|---|---|
Zürich, Müller, Genève | Zürich, Müller, Genève | UTF-8 als Windows-1252 gelesen |
€ | € | UTF-8 als Windows-1252 gelesen |
Z�rich oder Z?rich | Zürich | Windows-1252 als UTF-8 gelesen |
Z√ºrich | Zürich | UTF-8 als Mac Roman gelesen |
Die erste Zeile ist der häufigste Fall: Ein modernes System schreibt UTF-8, ein Programm liest einen regionalen Zeichensatz. Excel etwa braucht am Anfang einer UTF-8-CSV meist ein Byte-Order-Mark, um sie zu erkennen – darum gibt es beim Sichern das eigene Format CSV UTF-8.
Die Datei richtig öffnen
Intact CSV Editor erkennt den Zeichensatz beim Öffnen – 81 Textkodierungen, darunter UTF-16, die Windows-Codepages, Mac Roman, die DOS-Codepages und die ostasiatischen Zeichensätze, und 52 EBCDIC-Codepages vom Grossrechner – und sagt in der Statusleiste, was es gefunden hat und wie sicher es ist. Ist eine Datei mehrdeutig, wählen Sie den Zeichensatz im Format-Inspektor, und die Datei wird neu gelesen. Auf der Festplatte ändert sich dabei nichts.
Schwierig sind die Ein-Byte-Zeichensätze: Sie haben alle dieselben 256 Werte und unterscheiden sich nur darin, was
sie damit meinen. Polnische Namen in Windows-1250 lassen sich fehlerfrei als Windows-1252 lesen und heissen dann
ŁódĽ. In den Bytes steht nicht, was gemeint ist – ein Mensch sieht es sofort. Die Lupe neben dem
Zeichensatz im Format-Inspektor öffnet Welcher Zeichensatz ist es?: jeder Zeichensatz, den die App kennt, jeweils
mit einer Zeile Ihrer Datei so gelesen, die wahrscheinlichen zuerst. Klicken Sie den an, der richtig liest.
Für einen Ordner, der immer dieselbe Art Datei bekommt, legt eine Regel unter Einstellungen ▸ Regeln den Zeichensatz einmal fest – zum Beispiel Windows-1252 für die Exporte der Bank.
Zwei Zeichensätze in einer Datei
Hängen Sie zwei Exporte aneinander – einen aus einem System, das UTF-8 schreibt, einen aus einem, das Windows-1252 schreibt –, entsteht eine Datei, die kein einzelner Zeichensatz lesen kann: Welcher auch gewählt wird, die Hälfte der Umlaute geht kaputt. Intact CSV Editor bemerkt, wenn eine Datei beides enthält, liest jedes Zeichen als das, was seine Bytes allein sein können, und sagt es im Format-Inspektor unter «Hinweise». Beim Sichern wird daraus ein Zeichensatz.
So sichern, dass sie intakt ankommt
Gesichert wird im Zeichensatz, in dem die Datei kam, mit Byte-Order-Mark, wenn sie eines hatte. Braucht das empfangende System etwas anderes, wählen Sie den Zeichensatz beim Export – und enthält ein Wert ein Zeichen, das dieser Zeichensatz nicht halten kann, etwa ein € in einer Latin-1-Datei, hält das Sichern an und nennt Zeichen und Zelle. Es wird nie still als Fragezeichen geschrieben.
Wenn der Schaden schon in der Datei steht
Hat jemand die Datei falsch geöffnet und gesichert, stehen die kaputten Zeichen jetzt als echter Text in der
Datei. Ein anderer Zeichensatz hilft dann nicht mehr. Wählen Sie Tabelle ▸ Aufräumen ▸ Doppelt geschriebenen Text
reparieren …: Die App findet die doppelt kodierten Werte, zeigt Beispiele – Müller → Müller – und
repariert erst, wenn Sie zustimmen, in einem Schritt, den Sie rückgängig machen können. Ob ü gemeint war,
wissen nur Sie; darum fragt die App, statt zu raten.
Einzelne Paare lassen sich auch mit Suchen und Ersetzen beheben – ü → ü,
é → é –, mit Vorschau, bevor Sie alle ersetzen.
Mit Ihrer eigenen Datei ausprobieren
Intact CSV Editor ist in der Beta. Melden Sie sich an, und wir schreiben Ihnen, sobald Ihr Zugang bereit ist.