Decodifica strani caratteri nel file di testo


1

Qualcuno mi ha inviato un file di testo. Sebbene io possa leggere la maggior parte del documento, a volte ci sono personaggi insoliti. Quando lo apro in VIM, vedo <92> al suo posto. Quando uso gedit, vedo un personaggio che sembra un quadrato con due zeri e 9 e 4 nel quadrato.

C'è un modo per decodificare questi personaggi divertenti nel loro equivalente umano leggibile?

Ho anche eseguito quanto segue in shell:

johncomputer> file --mime-encoding file.txt
johncomputer> file.txt: : utf-8

Quindi penso che sia codificato in utf8.

Oh, e anche questo è un documento di testo in cui la maggior parte dei personaggi è leggibile. Solo alcuni (non tutti) dei personaggi accentati si stanno rivelando strani.


Sai quale codifica è stata utilizzata per salvare il file di testo?
xxbbcc,

Penso che sia utf8
John,

Potresti voler guardare la prima e l'ultima parola nel tuo file txt. Potrebbero esserci alcuni suggerimenti sul tipo di file. Ad esempio, i file png avranno qualcosa di simile ‰PNGall'inizio, un file jpeg che ho aperto ÿØÿà JFIFall'inizio, ecc.
Jerry,

Se la pensi così, prova a usare un editor diverso - Notepad ++ o Programmer's Notepad su Windows (non conosco VIM / Linux). Se sei sicuro che questo è un file di testo (non un altro formato di file) e la codifica è UTF-8, uno di questi dovrebbe essere in grado di mostrare correttamente il contenuto. Tieni presente che anche in questo caso potrebbero essere presenti alcuni caratteri che non possono essere visualizzati e che il carattere utilizzato dall'editor potrebbe anche limitare i caratteri che possono essere visualizzati sullo schermo. Questo è in genere un limite delle finestre della console.
xxbbcc,

Se vedi <92>, sicuramente non è UTF-8.
Grawity,

Risposte:


5

Le probabilità sono che ciò che vedi come <92> e <94> è un apostrofo "smart" (riccio) codificato da windows-1252 e una doppia virgoletta destra "smart". Potrebbero essere praticamente qualsiasi cosa, ovviamente, ma in UTF-8, tali byte non possono apparire come "standalone", solo come il secondo o successivo byte di una rappresentazione multi-byte di un carattere,


1

Conosci la tabella codici utilizzata dalla persona che ti ha inviato il file? Qual è la loro lingua principale?

In Vim puoi ricaricare il file usando un'altra codifica con il comando

:e ++enc=cpXXX

Link al suggerimento vim pertinente


Non so come abbiano creato questo documento di testo. Me l'hanno appena inviato per e-mail. Ho provato il comando VIM, ma questo non sembra influire sul documento. Vedrò <92>
Giovanni,

Se il file è veramente UTF-8, questo comando lo mostrerà :e ++enc=utf8un paio di altri da provare sarebbe utf16 e ucs2
Jimbo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.