csv文件utf8编码后windows操作系统(中文GBK环境)下乱码

解决方式:

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

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


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

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

如果是 php

fwrite($fp,"\xFF\xFE", 2);
fwrite($fp, iconv("utf-8", "UCS-2LE", $input))


你可能感兴趣的:(Php)