栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在各种浏览器中使用javascript在客户端读取文件内容

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在各种浏览器中使用javascript在客户端读取文件内容

编辑以添加有关File API的信息

自从我最初写这个答案以来,文件API就已经被提议作为标准并在大多数浏览器中实现(从IE10开始,它增加了

FileReader
对此处描述的API的支持,尽管还不是
File
API)。该API比较旧的MozillaAPI稍微复杂一点,因为它旨在支持文件的异步读取,对二进制文件的更好支持以及对不同文本编码的解码。Mozilla开发人员网络上有一些可用的文档,以及各种在线示例。您将按以下方式使用它:

var file = document.getElementById("fileForUpload").files[0];if (file) {    var reader = new FileReader();    reader.readAsText(file, "UTF-8");    reader.onload = function (evt) {        document.getElementById("fileContents").innerHTML = evt.target.result;    }    reader.onerror = function (evt) {        document.getElementById("fileContents").innerHTML = "error reading file";    }}

原始答案

在WebKit中(似乎是Safari和Chrome)似乎没有办法做到这一点。File对象具有的唯一键是

fileName
fileSize
。根据支持File和FileList的提交消息,这些是受Mozilla的File对象启发的,但它们似乎仅支持部分功能。

如果您想更改此设置,则始终可以将补丁发送到WebKit项目。另一种可能性是建议将Mozilla
API包含在HTML 5中。在WHATWG的邮件列表是可能做到这一点的最好的地方。如果这样做,那么至少在几年后,很有可能会有跨浏览器的方式来做到这一点。当然,提交修补程序或提案以包含在HTML5中确实意味着捍卫该想法的一些工作,但是Firefox已经实现它的事实为您提供了一些起点。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/442111.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号