我有一个从Google云端硬盘下载的.csv文件,其编码无法识别重音字符(西班牙语字符)。
使用适用于Windows的VIM编辑器,我可以通过打开文件(vim spanish.csv)然后在文件类型
内解决此问题 :write ++enc=utf-16 spanish-2.csv
现在我需要创建一个.bat或.ps1来自动为我做这个。我怎么能这样做?
P.D。:我尝试过使用iconv而且我无法转换我从Google云端硬盘下载的文件,因为我不知道编码是什么。我试过了:
iconv -f ANSI:X3.4-1968 -t UTF-8 spanish.csv > spanish-2.csv
iconv -f ANSI:X3.4-1986 -t UTF-8 spanish.csv > spanish-2.csv
iconv -f ASCII -t UTF-8 spanish.csv > spanish-2.csv
还有许多其他编码,但它说文件无法转换。
答案 0 :(得分:1)
当您在Vim中打开spanish.csv
源文件时
:setlocal fileencoding?
应告诉您检测到的编码。还有像enca
这样的第三方工具可以执行此检测。然后,您可能只需要将编码名称转换为iconv
所需的格式。
您也可以直接使用Vim进行转换;可以通过-c {cmd}
:
vim -c "write ++enc=utf-16 spanish-2.csv" -c "quit" spanish.csv
使用:argdo
和文件名%:r-2.%:e
,您甚至可以将多个源文件传递到单个Vim实例进行转换。