Ugrás a tartalomhoz
100% helyi

Charset detektor

Találja ki az eredeti kódolást az elrontott szöveg mögött, és állítsa vissza.

Bemenet
Kimenet

Charset detektor

Illesszen be olyan szöveget, ahol az ékezetes betűk karakterláncokká alakultak, például „Pröš” vagy „GrĂ¶ĂŸe”, és ez az eszköz kitalálja, hogy mi történt. A szokásos ok egy olyan UTF-8 fájl megnyitása, mentése vagy átvezetése, amely egybájtos kódlapot feltételez – Windows-1250 vagy ISO-8859-2 közép-európai szöveg esetén, Windows-1252 nyugat-európai szöveg esetén. Minden ékezetes karakter eredetileg két vagy három UTF-8 bájt volt; rossz kódlap alatt egy-egy bájtot olvasnak, pontosan ilyen dupla szemétté válnak.

Az érzékelő úgy működik, hogy minden egyes jelölt kódlapnál megpróbálja a visszafordítást, és ellenőrzi, hogy az eredmény jól formázott UTF-8-e – egy szerkezeti teszt, amely a helyesen kódolt szöveget lényegében véletlenül sem megy át, ezért az automatikus észlelés valódi biztonsággal alkalmazhat javítást, nem pedig érmefeldobást. Ha egyezést talál, megmutatja a kitalált eredeti kódolást, a kitalált félreolvasott kódolást és a helyreállított szöveget, valamint azt, hogy hány karaktert távolított el a javítás (a mojibake mindig hosszabb, mint a szöveg, amelyből származik, mivel minden törött karakter több karakterből állt).

Az automatikus észlelés csak kitalálja az ellenőrizhető irányt – az UTF-8 rossz kódlapon keresztül jelenik meg. A ritkább fordított eset, a Latin-1-ként olvasott Windows-1250 vagy ISO-8859-2 fájl nem rendelkezik ezzel egyenértékű szerkezeti ellenőrzéssel, így kézi opcióként kínálja fel a legördülő listában, ha már gyanítja, hogy ez történt, nem pedig csendben. Ez egy heurisztikus eszköz, nem pedig garancia: előfordulhat, hogy a több nyelvet keverő vagy a célkódlap tartományán kívül eső szimbólumokat tartalmazó szöveg nem állítható helyre, és ezt egyértelműen kiírja ahelyett, hogy magabiztos rossz választ adna vissza.

Minden helyileg fut a böngészőben, ugyanazokkal a kódolási táblázatokkal, amelyeket a böngészők használnak a weboldalak megjelenítéséhez – semmi, amit beilleszt, nem kerül fel sehova, ami itt fontosabb, mint a legtöbb eszköz, mivel az elrontott szöveg gyakran valódi ügyfélrekordokból, exportált adatbázisokból vagy támogatási jegyekből származik.

Gyakori kérdések

Honnan tudja, hogy melyik kódolást használta?
Minden egyes jelölt kódlap alatt újrakódolja az elrontott szöveget, és ellenőrzi, hogy az eredményül kapott bájtok érvényes UTF-8-at alkotnak-e. A helyesen kódolt szöveg lényegében soha nem megy át ezen az ellenőrzésen véletlenül, így az egyezés megbízható jele a történteknek – nem bizonyosság, hanem közeli.
Miért nem ajánlja fel az automatikus észlelés a "read as Latin-1" javítását?
Ennek az iránynak nincs egyenértékű módja önmaga ellenőrzésére – sok bájtérték egynél több kódlapon lévő érvényes betű, így elfogadhatónak tűnő, de hibás szöveget eredményezhet. Válassza ki manuálisan a legördülő menüből, ha már tudja, hogy ez a helyzet.
Meg tudja javítani a szöveget hangulatjelekkel vagy vegyes nyelvekkel?
Csak akkor, ha a szövegben minden karakter a jelölt kódlaphoz tartozik. Egyetlen hangulatjel vagy egy karakter ezen a tartományon kívül azt jelenti, hogy az egész sort nem lehet megfordítani, és az eszköz változatlanul hagyja, nem pedig találgat.
Ez garantáltan helyes?
Nem – ez egy heurisztika, nem egy hitelesített konverter. Nagyon megbízhatóan felismeri az eredeti UTF-8-as-legacy-codepage mojibake kódot, és világosan megmondja, ha nem talál biztonságos megoldást, ahelyett, hogy magabiztosan rossz választ adna vissza.
Fel van töltve valahova a szövegem?
Nem. Az észlelés és a helyreállítás is teljes egészében a böngészőben fut, ugyanazokkal a kódolási táblázatokkal, amelyeket már a weboldalak megjelenítéséhez szállít – a szöveg soha nem hagyja el az eszközt.