我正在制作解析器(1 csv到3 csv)脚本,我遇到了问题。
我是法国人,所以用我的语言我有一些信件:é è à ....
客户向我发送了一个csv文件,Linux认为该文件为“unknown-8bit”(我想是ansi)。
在我的脚本中,我正在编写3个新的csv文件。但是ViM将它们创建为ISO latin1,因为它与条目中的内容很接近,但我的é,è,à...
已被破坏。我需要UTF-8。
所以我尝试将第一个ANSI csv转换为UTF-8:
iconv -f "windows-1252" -t "UTF-8" import.csv -o import.csv
问题是它破坏了我的CSV。它现在只有一排。但我的特殊角色还可以。有没有办法将ANSI转换为UTF-8并保留我的行?
答案 0 :(得分:25)
将输出放入另一个文件中。不要覆盖旧的。
iconv -f "windows-1252" -t "UTF-8" import.csv -o new_import.csv
读取和写入同一文件时 iconv
失败。