解决方式:

第一种方式:文件增加 BOM 头,改称 utf-16le 编码,全平台通吃

第二种方式:utf-8 转换为 GBK,可能换到 mac Linux 等又乱了,而且 GBK 不好处理。


下面写下 shell 下简单处理,因为项目中 csv 是 shell 生成的

  1. (printf "\xff\xfe" ; iconv -f utf-8 -t utf-16le 源文件) > 新文件  


如果是 php

  1. fwrite($fp,"\xFF\xFE", 2);  

  2. fwrite($fp, iconv("utf-8""UCS-2LE"$input))