Dubbel gecodeerde tekens herstellen: é in plaats van é

Toont je tekst é in plaats van é of ’ in plaats van ’? Dan is de tekst niet één keer, maar twee keer verkeerd omgezet. Mojibuster draait beide stappen terug, ook als de tekst maar gedeeltelijk kapot is.

Werkt met tekst en met deze bestanden:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

Bijvoorbeeld exports uit Excel, databaseback-ups, ondertitels of websitecode.

Herstellen

  1. Sleep een bestand hierheen of plak tekst
  2. Het herstellen gaat automatisch
  3. Kopieer of download
of sleep een bestand hierheen

Zo ziet dubbel gecodeerde tekst eruit

Een zin die twee keer verkeerd is omgezet

Voor

Het café van Zoë – crème brûlée voor één euro

Na

Het café van Zoë – crème brûlée voor één euro

Hoe het ontstaat

In UTF-8 bestaat é uit twee bytes. Leest een programma die bytes als Windows-1252, dan krijg je twee tekens: é. Slaat het dat resultaat opnieuw op als UTF-8, dan zijn van één teken vier bytes geworden. Gebeurt dat nog een keer, dan wordt elk van die tekens weer opgesplitst: é wordt é.

Typische oorzaken van die tweede ronde:

  • Een database wordt gemigreerd terwijl de WordPress- of SQL-export al eerder kapot was.
  • Een CSV wordt in Excel geopend, opgeslagen en later opnieuw verkeerd geïmporteerd.
  • Een script of API zet tekst om die al UTF-8 is.

De meest voorkomende patronen

Dubbel gecodeerd

é
è
ë
ï
ü
€
’

Goed

é
è
ë
ï
ü
€
’

Bij drievoudige codering wordt het nog langer: é wordt é. Ook dat niveau herstelt Mojibuster automatisch.

Waarom zoeken en vervangen niet genoeg is

Met zoeken en vervangen moet je elk patroon kennen: één per niveau en per speciaal teken. Er glipt er zo één tussendoor, of je past per ongeluk tekst aan die wel goed was. Mojibuster rekent in plaats daarvan de oorspronkelijke bytes uit en controleert of het resultaat geldige UTF-8 is. Pas dan wordt de plek vervangen.

  1. Plak de tekst hierboven of sleep het bestand naar het vak.
  2. Mojibuster ziet hoe vaak de tekst is omgezet en herstelt tot drie niveaus.
  3. Onder Wat is er veranderd? zie je elke aangepaste plek. Kopieer daarna het resultaat of download het bestand.

Tekst die al goed is, blijft ongewijzigd, ook als kapotte en goede regels in hetzelfde bestand door elkaar staan. Fouten van één niveau zoals é komen aan bod op UTF-8-tekens herstellen.

Veelgestelde vragen

Hoe herken ik dubbele codering?

Aan langere reeksen met Ã, †of Â. Fouten van één niveau zijn korter, zoals é (é in plaats van é).

Hoeveel niveaus kan Mojibuster herstellen?

Tot drie. Meer komt in de praktijk bijna nooit voor.

En als maar een deel van de tekst dubbel gecodeerd is?

Geen probleem. Mojibuster herstelt elke plek afzonderlijk en laat de goede delen ongemoeid.

Kan ik het resultaat eerst controleren?

Ja. Onder Wat is er veranderd? toont Mojibuster elke herstelde plek met regelnummer, voordat je kopieert of downloadt.

Meer uitleg