网页设计学习笔记

HTML,CSS,JavaScript

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: :: 管理 ::

在 W3C 草案中的 File API 中,提供了 FileReader 对象。利用 FileReader,不和服务器交互我们也可以在浏览器中打开本地文件,而且这种方法更加优雅。我们来看最简单的例子(查看效果):

<html>
<body>
<input type="file" id="openselect"/>
<textarea id="showresult"></textarea>
<script>
function doOpen(evt) {
  var files = evt.target.files,
      reader = new FileReader();
    reader.onload = function() {
        showout.value = this.result;
    };
    reader.readAsText(files[0]);
}
var openbtn = document.getElementById("openselect"),
    showout = document.getElementById("showresult");
openselect.addEventListener("change", doOpen, false);
</script>
</body>
</html>

这个 FileReader API 在 Firefox 3.6,Chrome 6,IE 10 和 Opera 11.1 这些浏览器中开始得到支持。

相应地,要在浏览器中保存本地文件,可以看这篇文章

参考资料:
[1] W3C File API
[2] file upload control - HTML5
[3] Reading local files in JavaScript - HTML5 Rocks
[4] When can I use FileReader API?
[5] FileReader - MDN
[6] Using files from web applications - MDN
[7] File, FileReader 和 Ajax 文件上传
[8] Chrome FileReader - Stack Overflow
[9] FileReader: onload doesn't works as local file mode
[A] HTML5中File对象初探 | JS Mix
[B] FileReader详解与实例---读取并显示图像文件 | JS Mix
[C] Getting File Handles: Directory Upload

posted on 2012-05-27 19:10  zoho  阅读(2350)  评论(0编辑  收藏  举报