使用node-webkit编写文本文件



我正在尝试做一件相当简单的事情:用在文本输入字段中输入的数据编写一个文本文件。。。

var data = document.getElementById("fileContent").value;
fs.writeFileSync("test.txt", data);

例如,如果我输入

Write this to file 123 123

我最终在文件中看到了这个。。。

Write this to

如果我把一个字符串硬编码到应用程序中,它就会正确写入。

fs.writeFileSync("test.txt", "this is a hard coded string");

我尝试在有编码参数集和没有编码参数集的情况下使用writeFileSync。我尝试过在对参数集进行编码和不进行编码的情况下创建WriteStream。我试过fileOpen、fs.writeSync和fs.close。我甚至试过将日期转换为Buffer对象并编写它。在每种情况下,我都得到了完全相同的结果。

编码也很奇怪。Notepad++表示编码是"UCS2-LE w/o BOM",我希望它是UTF-8,因为我已经将编码参数设置为UTF-8。

有什么想法吗?

  1. 这是Node-Webkit-v0.9的一个错误*
  2. 如果您使用Node-Webkit-v.8.*或更低版本,也可以

经过更多的研究并确定这是编码问题,我偶然发现了这篇文章。显然,utf8不起作用。。。

https://groups.google.com/forum/#!消息/节点网络工具包/3M-0v92o9Zs/eSYnSZ8dUK0J

我将其编码更改为"utf16le",这似乎可以正确地为硬编码文本和文本框中的文本编写文本。

相关内容

  • 没有找到相关文章

最新更新