从浏览器缓存读取数据时出现奇怪的结果

发布于 2024-12-06 04:54:37 字数 370 浏览 1 评论 0原文

在我正在开发的一个实验性扩展中,我使用一个函数来获取网页的源并将其分配给一个变量。它工作得很好。但是我想改变它的工作方式并从 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最单纯的乌龟 2024-12-13 04:54:37

这是一个 字节顺序标记,您正在查看的文件似乎正在使用 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文