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

时间:2022-02-22 23:46:21

近日在服务器端通过导出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 。