java 发表于 2018-4-28 14:49:34

linux下csv导出文件中文乱码问题

http://www.cnblogs.com/soqu36/p/6957330.html

近日在服务器端通过导出csv文件,将数据从linux服务器端保存到windows桌面端,以便用户可以通过excel打开使用数据。
但是在使用excel打开csv文件时,出现了中文乱码的情况,但是使用记事本打开没有问题。
经过分析,原因如下:1)linux服务器端采用的是zh_CN.utf-8编码方式;2)windows的excel打开csv文件默认是使用ansi(gbk)编码方式;这样就导致excel打开乱码的现象。
解决方案:1.在服务器端代码中增加转码操作,由于是整个文件,故采用iconv命令行方式进行整体转码,然后通过system调用shell来实现;2.判断system是否调用成功,需要查看system的返回值。这里不展开讨论,网上有很多说明。关键字:system 返回值signal 。

即:iconv file1.csv -f UTF-8 -t GBK -o file2.csv

页: [1]
查看完整版本: linux下csv导出文件中文乱码问题