我想读取本地二进制文件。所以,我这样做
var file = new File([""], url);
var reader = new FileReader();
reader.onload = function () {
parse(reader.result);
}
reader.readAsArrayBuffer(file);
其中url是文件路径,如url =“c:\ temp \ myfile.bin”
我没有任何错误,但有些错误,因为我的应用程序中的所有数据都消失了。可能有什么不对?有什么想法吗?
谢谢!
答案 0 :(得分:1)
出于安全原因,我猜您必须使用 input type =“file”。
这是一个有效的例子。为方便起见,它在同一个浏览器窗口中显示打开的文件。
<html>
<body>
<script>
function readFile() {
var reader = new FileReader();
file = document.getElementById("uploadText").files[0];
reader.onload = function (ev) {
document.getElementById("obj").data = ev.target.result;
// parse(ev.target.result);
};
reader.readAsDataURL(file);
// reader.readAsArrayBuffer(file);
};
</script>
<div>
<input id="uploadText" type="file" onchange="readFile();" />
</div>
<object id="obj" data="" />
</body>
</html>