使用 CasperJS 将法语字符写入 CSV 文件,但显示不正确
Writing french characters to CSV file with CasperJS, but not displayed correctly
我正在使用 CasperJS,但是 none 这与网络抓取部分有关。
我正在将字符串(包含法语字符)打印到 csv。当我稍后打开该 csv 文件时,所有法语字符都无法正确显示。
var fs = require('fs');
var content = 'ë,è,é';
var path = 'target.csv';
fs.write(path, content, 'w');
这最终被写成�
有什么办法可以在JS脚本中更改CSV的编码?我知道记事本另存为技巧,但它需要自动化。如果不行,是否可以通过命令行来完成?
Excel(至少我的版本)需要 Byte Order Mark 才能正确显示 CSV 文件中的 UTF-8 内容。您可以通过在内容前面加上 JavaScript.
中的 \uFEFF
unicode 字符来实现此目的
为简单起见,这是 PhantomJS 中的完整脚本(CasperJS 以相同的方式运行,因为它在 在 PhantomJS 中运行):
var fs = require('fs');
var content = 'ë,è,é';
var path = 'data.csv';
fs.write(path, "\uFEFF" + content, 'w');
phantom.exit();
确保脚本文件本身也是 UTF-8 编码的。
我正在使用 CasperJS,但是 none 这与网络抓取部分有关。
我正在将字符串(包含法语字符)打印到 csv。当我稍后打开该 csv 文件时,所有法语字符都无法正确显示。
var fs = require('fs');
var content = 'ë,è,é';
var path = 'target.csv';
fs.write(path, content, 'w');
这最终被写成�
有什么办法可以在JS脚本中更改CSV的编码?我知道记事本另存为技巧,但它需要自动化。如果不行,是否可以通过命令行来完成?
Excel(至少我的版本)需要 Byte Order Mark 才能正确显示 CSV 文件中的 UTF-8 内容。您可以通过在内容前面加上 JavaScript.
中的\uFEFF
unicode 字符来实现此目的
为简单起见,这是 PhantomJS 中的完整脚本(CasperJS 以相同的方式运行,因为它在 在 PhantomJS 中运行):
var fs = require('fs');
var content = 'ë,è,é';
var path = 'data.csv';
fs.write(path, "\uFEFF" + content, 'w');
phantom.exit();
确保脚本文件本身也是 UTF-8 编码的。