我有一个由错误存储的西里尔俄文( WINDOWS-1251 )组成的SQL转储文件,例如Èðàíñêèå,它应该正确地显示为Иранские。
在过去,我成功地转换了sql文件,但是内存在我所做的事情和顺序上失败了。
从逻辑上讲,由于它存储在LATIN1中,所以我将从LATIN1转换为WINDOWS-1251,然后从WINDOWS-1251转换到UTF-8/TRANSLIT或类似的东西。
到目前为止,我已经尝试过:
1.
iconv -f WINDOWS-1251 -t UTF-8//TRANSLIT -o new.sql snippet.sql输出:
Èðà ГГ±ГЄГЁГҐ (不是我想要的)
2.
iconv -f LATIN1 -t UTF-8//TRANSLIT -o new.sql snippet.sql 输出:
Ã<88>ðà Ãñêèå (也不是我想要的)
Notes
WINDOWS-1251转换为UTF-8//TRANSLIT,因为这是写在我的笔记中的。Èðàíñêèå。如果我在vim中做了set enc=latin1,那么我就看到了~Hð| íñêèå,好像这并没有使它更加混乱。发布于 2010-03-07 13:41:26
iconv -f utf-8 -t latin1 < in.sql | iconv -f cp1251 -t utf-8 > out.sqlhttps://stackoverflow.com/questions/2396376
复制相似问题