我正在从node.js创建一个文件并在其中插入阿拉伯文本,但输出是垃圾文本而不是阿拉伯文本
var fs = require('fs');
fs.writeFile('message.txt', 'تمكين و تطوير جمعيات إسكان تعاونية لبناء المساك')
答案 0 :(得分:1)
想出问题,我使用webstorm作为IDE并从webstorm创建js文件默认情况下它的创建文件在ancsi编码中我只是改变我的js文件的编码及其工作正常现在无论如何感谢您的快速帮助
答案 1 :(得分:0)
您是否尝试使用mmap
附加参数?
options
答案 2 :(得分:0)
当运行相同的js样本然后运行cat message.txt
时,我得到了阿拉伯语输出。
运行file message.txt
会返回UTF-8 Unicode text, with no line terminators
,这也是预期的。
我的猜测是这与记事本不支持utf8有关。当我在Ubuntu上使用gedit打开文件时,它显示阿拉伯语就好了。
答案 3 :(得分:0)
您可以在选项中添加编码,如下所示
fs.writeFile('message.txt', 'تمكين و تطوير جمعيات إسكان تعاونية لبناء المساك', {encoding: 'utf8'});
另外,你确定记事本首先显示阿拉伯文字吗? 尝试使用Web浏览器(chrome,FF)打开它并将编码设置为UTF-8(通常在开发人员菜单下找到)