Scripting.FileSystemObject错误读取文件

时间:2012-11-03 02:37:45

标签: javascript internet-explorer activexobject

我尝试在IE 8中使用javascript读取本地文件。 9。

我的剧本:

var fso = new ActiveXObject("Scripting.FileSystemObject");
var file = fso.OpenTextFile(file_name, 1, true);
var file_content = file.ReadAll();
file.Close();

文件已成功读取。但是所有文件中的一个字节都是错误的。 file_content.charCodeAt(8)返回给我1038,但应该是161。还有一些与文件相同的其他字节。

我的数据文件是:

0000000000: 03 0C 0A 1A 01 00 00 00 │ A1 00 1F 00 00 00 00 00
0000000010: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
0000000020: 4F 42 4A 45 43 54 49 44 │ 00 00 00 4E 00 00 00 00
0000000030: 04 02 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
0000000040: 58 00 00 00 00 00 00 00 │ 00 00 00 4E 00 00 00 00
0000000050: 0A 02 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
0000000060: 59 00 00 00 00 00 00 00 │ 00 00 00 4E 00 00 00 00
0000000070: 0A 02 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
0000000080: 56 41 4C 55 45 00 00 00 │ 00 00 00 4E 00 00 00 00
0000000090: 06 02 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00
00000000A0: 0D 20 31 2E 30 30 31 34 │ 36 38 35 39 33 2E 30 30
00000000B0: 35 33 33 31 38 38 35 2E │ 30 30 31 30 30 2E 30 30
00000000C0: 1A                      │

P.S。我通过下一个代码通过Mozilla Firefox,Chrome和Chromium阅读此文件:

var reader = new FileReader();

if (jQuery.browser.mozilla) {
  slice = file.mozSlice(0, file.size);
}
else {
  slice = file.slice(0, file.size);
}

reader.onload = function(e) {
  if (e.target.readyState == FileReader.DONE) {
    file_content = e.target.result;
  }
};

在此浏览器中file_content.charCodeAt(8)返回给我161

在这种情况下你能告诉我吗?可能是我做错了。

0 个答案:

没有答案