node 5.5 导出csv文件,文件名中文显示正确,内容中文乱码

node 5.5 导出csv文件,文件名中文显示正确,内容中文乱码

尝试使用 iconv-liteiconv.encode(str, 'GBK') 进行GBK编码不起作用。
求问如何解决啊~~

阅读 3.4k
2 个回答

我这个可以,然后发现区别好像是iconv.decode?

     var result = [];
            var bin = fs.readFileSync(file);
            var data = iconv.decode(bin, 'gbk');
            data = data.replace(/\t/g, "");
            data = data.replace(/\"([^\"]*)\"/g, function (a) {
                return a.replace(/,|"/g, "")
            })
            var lines = data.split("\r\n");
            for (let i in lines) {
                var rows = lines[i].split(",");
                for (let j in rows) {
                    rows[j] = rows[j].trim();
                }
                result.push(rows)
            }
            this.xlsxData = result;

我的解决办法是不进行GBK编码,直接输出utf-8,但是需要加BOM头。
new Buffer('xEFxBBxBF','binary') + utf-8字符串

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题