问题描述
我正在生成一些csv文件,生成效果很好,但是当我在Excel中打开文件时,它显示了所有混乱,但是同一文件在mac(numbers)中可以很好地打开
下面是我用来生成文件的代码的相关部分。 csv.encoding为utf16le
,csv.delimiter为\t
await pipelineAsync(
fs.createReadStream(sheet.path),csv.parse({delimiter: config.get('csv.delimiter')}),csv.transform((input) => {
if(rowCountGenerated == false) {
colCount = input.length;
rowCountGenerated = true;
}
rowCount++;
return Object.assign({},input);
}),csv.stringify({eol: true,record_delimiter: os.EOL,header: false,delimiter: config.get('csv.delimiter')}),fs.createWriteStream(fpath,{encoding: config.get('csv.encoding')})
);
下面是数据在excel中的外观
下面是数据在数字中的显示方式
有什么想法吗?
更新1 :看起来excel忽略了col分隔符,通过手动编辑文件并在第一行添加sep ='\ t',我能够解决该问题,请参见文件在excel中也正确。
唯一的问题,我现在要解决的是如何更改上述代码,以将sep=\t
添加到文件的第一行。
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)