È necessario conoscere o almeno indovinare la codifica dei caratteri dei dati per poterli convertire correttamente. Quindi dovresti provare a trovare informazioni sull'origine e il formato del file di testo e assicurarti di aver letto correttamente il file nel tuo software.
Ad esempio, "Uller ه kersv ن gen" assomiglia ad un nome scandinavo, con lettere scandinave al suo interno, interpretato erroneamente secondo un'ipotesi di codifica dei caratteri errata o come mungita da una conversione errata del codice carattere. La prima lettera araba in esso, "ه", è U+064 7 LETTERA ARABA HEH. Nella codifica ISO-8859-6, è E7 (esadecimale); in windows-1256, è E5. Poiché il testo scandinavo è normalmente rappresentato in ISO-8859-1 o Windows-1252 (quando non si usano codifiche Unicode), è naturale verificare in cosa si riferiscano E7 ed E5: "ç" e "å". Per ragioni linguistiche, quest'ultimo è molto più probabile qui. La seconda lettera araba è "ن" U + 0646 LETTERA ARABA NOON, che è E4 in windows-1256. E in ISO-8859-1, E4 è "ä". Questo ha perfettamente senso: la parola è "Ulleråkersvägen", un vero nome di strada svedese (almeno a Uppsala).
Pertanto, il dato è probabilmente il testo codificato ISO-8859-1 o Windows-1252 (Windows Latin 1), interpretato erroneamente come Windows-1256 (Windows arabo). Non è necessaria alcuna conversione; hai solo bisogno di leggere i dati come codificati Windows-1252. (Dopo la lettura, si può naturalmente essere convertito in un'altra codifica.)
fonte
2013-05-23 12:02:15
[Ciò che ogni programmatore ha assolutamente bisogno di sapere su codifiche e set di caratteri per lavorare con il testo] (http://kunststube.net/encoding/) – deceze
@deceze, questa non è la risposta alla mia domanda. Si prega di non utilizzare modi economici per portare traffico al tuo sito. Pensa sempre a ciò di cui ha bisogno l'opt e aiutali in modi brevi. – Mehboob
Se comprendi le codifiche, la risposta a questa domanda diventa più evidente. Dal momento che non posso ripetere le basi delle codifiche per tutti, ogni volta, ho scritto quell'articolo e linkarlo. Non ho alcun interesse particolare nell'incrementare il traffico sul mio sito, mi costa solo più soldi quando lo faccio. Quindi stai dicendo che l'articolo non ti ha fornito nuove informazioni ed era completamente fuori tema? – deceze