HTML5 FileReader,从本地文件读取

时间:2015-07-21 15:37:22

标签: javascript html5 filereader

我想读取本地二进制文件。所以,我这样做

var file = new File([""], url);
var reader = new FileReader();
reader.onload = function () {
    parse(reader.result);
}

reader.readAsArrayBuffer(file);

其中url是文件路径,如url =“c:\ temp \ myfile.bin”

我没有任何错误,但有些错误,因为我的应用程序中的所有数据都消失了。可能有什么不对?有什么想法吗?

谢谢!

1 个答案:

答案 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>