Node Webkit – writeFileSync中的编码选项不起作用?

我是初学者。

我想用UTF8编码写一个包含中文字符的HTML文件。 我从互联网上find了下面的代码。

fs.writeFileSync(target, generateHTML(), "utf8"); 

虽然当我阅读文档时,并没有明确说我可以添加一个编码标志。 generateHTML()返回HTMLstring。

但是,以下字符“返回”变成这样的:文件中的“æ'»å<!”。 我相信这是一个编码错误。

我使用错误的function? 如何使用正确的utf-8同步写入文件?


编辑

fs.writeFileSync可以很好地工作,但是当内容作为一个函数返回的时候不行。 请试试这个:

 function generateHTML(){return "返回"} fs.writeFileSync("index.html", generateHTML(), "utf8"); 

该文件包含ԏ -8格式的which,这不是预期的内容。


编辑

我testing了这与我安装的node.js版本,它工作正常。 这似乎与node webkit有关。

我将在稍后join版本。 这里的时间对我来说不方便。

解决scheme是将工作节点-webkit应用程序页面设置为utf-8编码。 我必须将其添加到页面:

 <meta charset="utf-8"> 

事实certificate,这件事很简单,但我错过了。

这对我来说很好:

 fs.writeFileSync('test.html', '返回', 'utf8');