latin1字符集,我用命令iconv转换后依旧乱码,但是本地用Notepad++转成utf-8再入库数据,却是正常的
查看文件编码
vi WeakcoverReason_20231120.csv
:set fileencoding
使用编码转换命令,将latin1改成UTF-8
iconv -f latin1 -t UTF-8 WeakcoverReason_20231120.csv -o WeakcoverReason_2023112017.csv
入库时发现数据依旧是乱码
但是本地用Notpad++转成后是正常的。
再用file 命令查看文件编码
file WeakcoverReason_20231120.csv
结果是ISO-8859
百度了一下,这两者的关系,发现ISO-8859就是Latin1的别名。
然后使用命令再次转换
iconv -f iso-8859 -t UTF-8 WeakcoverReason_20231120.csv -o WeakcoverReason_2023112017.csv
解决方案:将ISO-8859换成GBK
iconv -f GBK -t UTF-8 WeakcoverReason_20231120.csv -o WeakcoverReason_2023112017.csv
再次入库转换后的文件,发现乱码的问题已经解决了