Saya punya file txt:
$ file -i x.txt
x.txt: text/plain; charset=unknown-8bit
$ file x.txt
x.txt: Non-ISO extended-ASCII text, with CRLF line terminators
Dan ada beberapa karakter yang disandikan salah:
trwa³y, sta³y, usuwaæ
Bagaimana saya bisa mengubah penyandian file ini ke UTF-8? Saya telah mencoba cara berikut sejauh ini:
$ iconv -f ASCII -t UTF-8 x.txt
puiconv: illegal input sequence at position 4
Mungkin saya harus entah bagaimana menggunakan extended ASCII
( high ASCII
) tetapi tidak dapat menemukannya di iconv
daftar penyandian.
character-encoding
text
Patryk
sumber
sumber
iconv -f windows-1252 -t utf-8 file
Jawaban:
file
memberi tahu Anda "Teks ASCII yang diperluas non-ISO" karena mendeteksi bahwa ini adalah:Anda harus mencari tahu di mana penyandian file ini tampaknya. Anda dapat mencoba pengenalan otomatis Enca . Anda mungkin perlu mendorongnya ke arah yang benar dengan mengatakannya dalam bahasa apa teks itu.
Untuk mengonversi file, berikan
-x
opsi:enca -L polish x.txt -x utf8 >x.utf8.txt
Jika Anda tidak dapat atau tidak ingin menggunakan Enca, Anda dapat menebak pengodeannya secara manual. Sedikit melihat sekeliling memberi tahu saya bahwa ini adalah teks Polandia dan kata-katanya trwały, stały, usuważ, jadi kami sedang mencari terjemahan mana
³
→ł
danæ
→ż
. Ini terlihat seperti latin-2 atau latin-10 atau lebih mungkin (diberikan "non-ISO" CP1250 yang Anda lihat sebagai latin1 . Untuk mengonversi file ke UTF-8, Anda dapat menggunakan recode atau iconv .sumber
< x.txt > x.utf8.txt
Mengapa kita menggunakan<
itu>
? Bagaimana cara kerjanya?<
dan>
melakukan pengalihan input dan output masing-masing .Buka file teks dengan gedit dan dalam dialog "save as .." Anda akan melihat pengkodean saat ini.
sumber
Apakah Anda mencoba mencari tahu apa pengkodean yang sebenarnya adalah x.txt? Anda akan mendapatkan daftar penyandian yang didukung
Kadang-kadang terjadi pada saya bahwa saya mendapatkan ketidakcocokan antara latin1 dan utf8. Maka sering membantu untuk mengubahnya dari dan kembali ke utf8 dan sebaliknya.
sumber
Saya telah membuat skrip konversi otomatis menggunakan enca library, saya menggunakannya pada NAS saya untuk mengonversi subtitle ke UTF-8 tetapi dapat digunakan untuk konversi otomatis apa pun
Jangan ragu untuk menggunakan :)
EDIT:
sumber