从浏览器缓存读取数据时出现奇怪的结果
在我正在开发的一个实验性扩展中,我使用一个函数来获取网页的源并将其分配给一个变量。它工作得很好。但是我想改变它的工作方式并从 txt 文件获取内容。
我托管一个 txt 文件,例如:http//1.2.3.4/1.txt
。
我想要的是将这个txt文件的内容分配给一个变量。
功能在这里:http://jsfiddle.net/qumsm/。
(函数不是我的。我从另一个扩展 xpi 那里得到了它,我现在不记得了。尊重它的编码者。)
该函数产生 "ÿþP"
这个结果,但我没有得到。
In an experimental extension I am working on I use a function to get the source of a webpage and assign it to a variable. It worked perfectly fine. However I want to change the way it works and get the content from a txt file.
I am hosting a txt file like: http//1.2.3.4/1.txt
.
What I want is to assign the contents of this txt file to a variable.
Function is here: http://jsfiddle.net/qumsm/.
(Function is not mine. I got it from another extension xpi which I cant remember right now. Respects to the coder of it.)
The function produces "ÿþP"
this result which I dont get.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个 字节顺序标记,您正在查看的文件似乎正在使用 UTF-16 LE 编码。阅读该内容时,您需要使用 nsIConverterInputStream 而不是
nsIScriptableInputStream
数据并指定要转换的正确编码。nsIScriptableInputStream
仅在读取 ANSI 数据(而非 Unicode)时有用。请参阅MDN 上的代码示例。That's a byte order mark, the file you are looking at seems to be using UTF-16 LE encoding. You need to use nsIConverterInputStream instead of
nsIScriptableInputStream
when reading in that data and specify the correct encoding to convert from.nsIScriptableInputStream
is only useful when reading in ANSI data, not Unicode. See code example on MDN.