NodeJs - 如何使用BOM编写函数fs.writeFile?

use*_*355 25 byte-order-mark utf-8 node.js

我正在使用nodeJS v0.8.6和本机库fs.这是我的代码:

var filesys = require('fs');
filesys.writeFile('test.txt', 'This is an example with accents : é è à ','utf8', function (err) {});
Run Code Online (Sandbox Code Playgroud)

问题是它在没有BOM的情况下写入utf8(我使用notepad ++来验证它),它在Windows上的wordpad中不起作用(重音没有很好地显示).问题是我需要womeone使用wordpad很好地阅读该文件.

如何将BOM添加到我的文件中?

Esa*_*ija 39

UTF-8不需要bom,但你可以自己添加它.

filesys.writeFile('test.txt', '\ufeffThis is an example with accents : é è à ','utf8', function (err) {});
Run Code Online (Sandbox Code Playgroud)

  • UTF-8可能不需要在理智的操作系统和应用程序中使用BOM,但在Windows下它几乎总是如此.例外情况主要是从理智的环境移植的跨平台代码. (11认同)