Fall 1: � in einer Datei, die eigentlich in Ordnung ist
Zeigt ein Editor, Player oder Browser M�ller, ist die Datei meist in Windows-1252 (ANSI) gespeichert und wird als UTF-8 gelesen. Das Byte des Umlauts ist in UTF-8 ungültig, deshalb setzt das Programm beim Anzeigen das Ersatzzeichen � ein. In der Datei selbst steht aber noch das richtige Byte.
Lösung: Zieh die Original-Datei in das Feld oben. Mojibuster erkennt die Kodierung beim Einlesen und wandelt die Datei in UTF-8 um. Wichtig: die Datei selbst verwenden, nicht den Text aus dem Programm kopieren – beim Kopieren wird das � endgültig.
Fall 2: � oder ? sind fest im Text gespeichert
Hat ein Programm den Text mit dem Ersatzzeichen gespeichert oder weitergegeben, ist das ursprüngliche Zeichen verloren. Dasselbe gilt für ?: Programme setzen es ein, wenn ein Zeichen in der Zielkodierung nicht existiert – etwa beim Speichern als ASCII oder beim Schreiben in eine Datenbankspalte, die kein ü kennt.
Daraus lässt sich nichts zurückrechnen, denn alle Umlaute sind zum selben Zeichen geworden. Mojibuster zeigt dir an, wie viele Stellen betroffen sind, statt zu raten. Helfen kann nur die Quelle: den Export wiederholen oder ein Backup verwenden.
Typische Ursachen für Fragezeichen
- Datenbank: Spalte oder Verbindung stehen auf
latin1oderascii, die Daten kommen als UTF-8. MySQL ersetzt unbekannte Zeichen dann durch?– siehe MySQL und phpMyAdmin. - PowerShell 5.1:
Export-Csvschreibt standardmäßig ASCII und ersetzt Umlaute durch?– siehe PowerShell. - Python:
encode('ascii', errors='replace')ersetzt Zeichen still durch?– siehe Python und pandas. - Konsole: Die Windows-Konsole zeigt Zeichen, die ihre Codepage nicht kennt, als
?an. Hier ist meist nur die Anzeige falsch, nicht die Datei.
So erkennst du, welcher Fall vorliegt
- Öffne die Datei in einem Editor, der die Kodierung anzeigt, etwa Notepad++. Steht in der Statusleiste „ANSI“ oder „Windows-1252“, ist es Fall 1.
- Zieh die Datei in Mojibuster. Steht im Ergebnis „Gelesen als Windows-1252 (ANSI)“ und die Umlaute sind wieder da, war es Fall 1.
- Meldet Mojibuster verlorene Zeichen, ist es Fall 2. Dann hilft nur ein neuer Export.
Siehst du statt Fragezeichen Zeichenfolgen wie ä, ist das ein anderer Fehler – und der lässt sich fast immer reparieren: ü statt ü.
Häufige Fragen
Kann Mojibuster ? wieder in Umlaute verwandeln?
Nein. Ein ? kann für jeden Buchstaben stehen, die Information ist weg. Mojibuster ändert solche Stellen nicht, sondern zeigt dir, wie viele es sind.
Warum sehe ich � nur in einem Programm, im anderen nicht?
Dann ist die Datei in Ordnung, und nur eines der Programme liest sie mit der falschen Kodierung. Wandle sie mit Mojibuster in UTF-8 um, dann zeigen beide sie richtig an.
Was ist das Zeichen �?
Das Ersatzzeichen U+FFFD. Programme setzen es ein, wenn sie ein Byte nicht als Zeichen lesen können. Es weist auf einen Kodierungsfehler hin und gehört nicht zum eigentlichen Text.