Fall 1: � i en fil som egentligen är hel
Visar en editor, spelare eller webbläsare Malm� eller G�teborg är filen oftast sparad i Windows-1252 (ANSI) och läses som UTF-8. Byten för bokstaven är ogiltig i UTF-8, så programmet sätter vid visningen in ersättningstecknet �. I själva filen finns fortfarande rätt byte.
Lösning: dra originalfilen till rutan ovan. Mojibuster känner igen teckenkodningen när filen läses in och konverterar den till UTF-8. Viktigt: använd själva filen och kopiera inte texten från programmet – vid kopieringen blir � permanent.
Fall 2: � eller ? står verkligen i texten
Har ett program sparat eller skickat vidare texten med ersättningstecknet är den ursprungliga bokstaven förlorad. Samma sak gäller ?: program sätter in det när ett tecken inte finns i målkodningen – till exempel när filen sparas som ASCII, så att Västerås blir V?ster?s.
Ur det går ingenting att räkna tillbaka, eftersom varje å, ä och ö har blivit samma tecken. Mojibuster talar om hur många ställen det gäller i stället för att gissa. Då hjälper bara källan: exportera igen eller använd en säkerhetskopia.
Typiska orsaker till frågetecken
- Databas: kolumnen eller anslutningen använder
latin1ellerascii, medan data kommer in som UTF-8. MySQL ersätter då okända tecken med?. Ställ in allt påutf8mb4. - PowerShell 5.1:
Export-Csvskriver som standard ASCII och gör om å, ä och ö till?. Ange-Encoding UTF8. - Python:
encode('ascii', errors='replace')ersätter tecken med?utan varning. - Kommandotolken: Windows-konsolen visar tecken som dess teckentabell inte känner till som
?. Oftast är det bara visningen som är fel, inte filen.
Så ser du vilket fall du har
- Öppna filen i en editor som visar teckenkodningen, till exempel Notepad++ eller Anteckningar. Står det ”ANSI” eller ”Windows-1252” längst ned är det fall 1.
- Dra filen till Mojibuster. Står det ”Läst som Windows-1252 (ANSI)” i resultatet och är bokstäverna tillbaka, var det fall 1.
- Rapporterar Mojibuster förlorade tecken är det fall 2. Då hjälper bara en ny export.
Ser du teckenföljder som ä i stället för frågetecken är det ett annat fel – och det går nästan alltid att fixa: ä i stället för ä. Trasiga tecken som – och ’ hittar du under apostrofer och citattecken.
Vanliga frågor
Kan Mojibuster göra om ? till bokstäver igen?
Nej. Ett ? kan stå för vilken bokstav som helst, informationen är borta. Mojibuster låter sådana ställen vara men talar om hur många de är.
Varför ser jag � i ett program men inte i ett annat?
Då är filen i ordning och bara ett av programmen läser den med fel teckenkodning. Konvertera den till UTF-8 med Mojibuster, så visar båda den rätt. För CSV-filer i Excel kan du läsa här hur det hänger ihop.
Vad är tecknet �?
Ersättningstecknet U+FFFD. Program sätter in det när de inte kan läsa en byte som tecken. Det tyder på ett kodningsfel och hör inte till den egentliga texten.