Der Weg vom Buchstaben zum Bildschirm
Ein Text besteht für Menschen aus Zeichen, eine Datei zunächst aber aus Bytes, also aus technischen Zahlenwerten. Damit daraus wieder ein Buchstabe wird, braucht das Programm eine Zeichenkodierung. Sie legt fest, welcher Zahlenwert für welches Zeichen steht und wie viele Bytes dafür gelesen werden. Bevor Sie den Vorgang beginnen, sollten die Originaldatei und die vermutete Zeichenkodierung beisammenliegen; FlinkTools dient dabei als Zeichenzaehler für einen sichtbaren Vergleich.
Wo die Annahme auseinanderläuft
Beim Speichern übersetzt das erste Programm Zeichen in Bytes. Beim Öffnen muss das zweite Programm dieselben Bytes nach derselben Regel zurückübersetzen. Kennt die Datei ihre Kodierung nicht eindeutig oder wird die Angabe ignoriert, nimmt das Programm eine eigene Vorgabe an. Ein Umlaut, der in einer modernen Kodierung mehrere Bytes belegt, wird dann so gelesen, als gehörten diese Bytes zu mehreren eigenständigen Zeichen. Auf dem Bildschirm erscheinen etwa ein fremdes Sonderzeichen und ein weiterer Buchstabe statt des ursprünglichen Umlauts.
Die Datei ist nicht automatisch beschädigt
Der sichtbare Zeichensalat beweist nicht, dass der Inhalt beim Speichern verloren ging. Oft liegen die ursprünglichen Bytes noch unverändert vor; nur die Auslegung ist falsch. Wird ein solcher Text allerdings geöffnet und erneut gespeichert, kann das Programm den bereits falsch dargestellten Zeichensalat als neuen Inhalt ablegen. Dann gehen die ursprünglichen Zeichen beim nächsten Übersetzungsschritt tatsächlich verloren. Deshalb ist die unveränderte Originaldatei der wichtigste Ausgangspunkt für die Fehlersuche.
Woran Sie den Fehler erkennen
Typisch sind regelmäßig wiederkehrende fremde Zeichen an Stellen, an denen Umlaute oder andere Sonderzeichen stehen sollten. Der übrige Text bleibt oft lesbar, weil viele einfache Buchstaben in verschiedenen Kodierungen denselben Wert besitzen. Auch eine Fehlermeldung über ungültige Zeichen, leere Kästchen oder Fragezeichen deutet auf ein Kodierungsproblem hin. Ein einzelnes fehlendes Zeichen kann dagegen ebenso durch eine nicht unterstützte Schrift, eine beschädigte Datei oder eine fehlerhafte Übertragung entstehen.
- Nur Sonderzeichen sind auffällig, während gewöhnliche Buchstaben stimmen.
- Mehrere fremde Zeichen stehen dort, wo ursprünglich ein Zeichen erwartet wird.
- Die Darstellung ändert sich, sobald Sie im Öffnen-Dialog eine andere Kodierung wählen.
- In einem anderen Programm sieht dieselbe Datei anders aus.
- Nach erneutem Speichern bleibt der Zeichensalat bestehen oder breitet sich aus.
Warum UTF-8 nicht überall automatisch genügt
UTF-8 ist heute eine verbreitete Kodierung und kann viele Schriften und Zeichen darstellen. Das allein macht eine Datei aber nicht eindeutig. Ein älteres Programm, ein Export aus einer Tabellenkalkulation oder ein festgelegtes Austauschformat kann eine andere Kodierung erwarten. Entscheidend ist daher nicht nur, ob eine Kodierung grundsätzlich geeignet ist, sondern ob beim Schreiben, Übertragen und Lesen dieselbe Vereinbarung gilt. Eine Kennzeichnung in den Dateiinformationen oder im Dokumentkopf kann diese Verständigung ermöglichen; fehlt sie, muss das empfangende Programm raten.
Die Reparatur beginnt vor dem Speichern
Öffnen Sie die Kopie der Datei zunächst in einem Programm, das die Zeichenkodierung ausdrücklich auswählen lässt. Prüfen Sie eine vermutete Einstellung an mehreren Stellen des Textes, nicht nur an einem Umlaut. Wenn der Inhalt wieder plausibel aussieht, speichern Sie ihn in einer eindeutig angegebenen, von allen beteiligten Programmen unterstützten Kodierung. Bei Tabellen, Datenbanken oder Importen muss zusätzlich geklärt werden, welches Trennzeichen und welche Spaltenstruktur gelten; eine richtige Zeichenkodierung macht eine falsch eingelesene Tabelle nicht automatisch richtig.
Wenn die Ursache außerhalb des Textes liegt
Bleibt die Darstellung trotz anderer Kodierung fehlerhaft, liegt das Problem möglicherweise bei der Schrift oder bei einer beschädigten Datenübertragung. Ein leeres Quadrat bedeutet häufig, dass das Programm das Zeichen kennt, aber keine passende Schrift dafür verwendet. Werden Zeichen beim Kopieren verändert, können auch Zwischenablage, E-Mail-Programm oder Dateiformat beteiligt sein. Bei wichtigen Rechnungen, Formularen oder archivierten Dokumenten sollte die fehlerhafte Datei nicht weiter überschrieben werden. Eine technische Prüfung durch die zuständige IT-Stelle oder die Person, die das Austauschformat eingerichtet hat, klärt dann, an welcher Station die Annahme gewechselt hat.