【发布时间】:2011-04-06 20:36:19
【问题描述】:
在 Spidermonkey shell 中,使用 read() 函数读取文件会忽略文件的编码。有没有办法读取 UTF-8 或其他多字节编码文件并保留多字节字符?蜘蛛猴真是个小恶魔。
【问题讨论】:
标签: javascript unicode utf-8 spidermonkey
在 Spidermonkey shell 中,使用 read() 函数读取文件会忽略文件的编码。有没有办法读取 UTF-8 或其他多字节编码文件并保留多字节字符?蜘蛛猴真是个小恶魔。
【问题讨论】:
标签: javascript unicode utf-8 spidermonkey
因此,我与 Mozilla 的 JS 人员进行了交谈。事实证明这并不完全可能,因此他们添加了一个命令行标志来启用对 read() 和 snarf() 的 UTF-8 支持。
/usr/bin/js -e "print(read('filexyz.txt'))" -U
要通过此添加获得 Spidermonkey 的副本,您必须使用 Tracemonkey 存储库。您可以通过 Mercurial 获得它:
hg clone http://hg.mozilla.org/tracemonkey/
【讨论】:
read() 和 snarf() 现在总是 UTF-8。事实上,没有办法关闭它,所以如果你有一个非 UTF-8 文件,这真的很烦人。 :-P