千家信息网

HTML5中如何对本地文件进行读取和写入

发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,今天小编给大家分享一下HTML5中如何对本地文件进行读取和写入的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下
千家信息网最后更新 2024年11月20日HTML5中如何对本地文件进行读取和写入

今天小编给大家分享一下HTML5中如何对本地文件进行读取和写入的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

最近有这样一个需求,就是在html页面中有个按钮导出,点击它,将构造一个文档并存储到本地文件系统中。另外还有个按钮,点击它,从本地文件系统中读取一个文件并对内容进行分析。

说白了,就是一件事,就是如何读取或写入本地文件系统中的文件。

这件事情在html5以前是一件非常恐怖的,因为浏览器对本地文件系统有非常强的保护,似乎是一种叫做沙盒的机制,总之是,js不可以直接操作它。所以,这个时候,要想读某个文件,就需要将文件上传到服务器,然后服务器读取并解析这个文件,并将解析结果返回客户端。写一个文件,就稍微简单些,js没办法写,所以只能是服务器动态生成一个文件,并以下载的方式来下载它(attachment)。但是这样其实是很不合理的。因为要操作这个文件的是js引擎,但是中间还需要通过一个服务器。

html5来了它提供了一套文件系统的API,可以实现文件读写,我很好奇,这个需求可能是很常见的,但是网上却很少有Demo.所以,自己整理了一下。

文件读取

文件读取要利用到的API是FileReader,在html中的元素为:

html中元素就这么简单,首先需要一个file类型的input元素,这里为啥要display:none呢?因为这个东西太丑了

js代码:

$("#import").click(function(){//点击导入按钮,使files触发点击事件,然后完成读取文件的操作。        $("#files").click();    }); function import(){    var selectedFile = document.getElementById("files").files[0];//获取读取的File对象    var name = selectedFile.name;//读取选中文件的文件名    var size = selectedFile.size;//读取选中文件的大小    console.log("文件名:"+name+"大小:"+size);     var reader = new FileReader();//这里是核心!!!读取操作就是由它完成的。    reader.readAsText(selectedFile);//读取文件的内容     reader.onload = function(){        console.log(this.result);//当读取完成之后会回调这个函数,然后此时文件的内容存储到了result中。直接操作即可。    };}

这样,读取本地文件的操作就完成了。有些网友说什么使用ActiveXObject的什么的,这个只有在IE中才能使用,但是现在连微软都放弃了IE,所以,不要这样使用。

写入文件

写入文件稍微复杂了一些,虽然在html5中与FileReader相对应的也有一个FileWriter,但是这个东西用起来实在是不爽,至少我查了大半天,没有找到一个可以用的API,此外,FileReader可以被Chrome、FF和Safari都支持。当然了,要求一定版本以上的。 但是FileWriter似乎只有被Chrome支持。不管了,能用就好。

//首先导入一个js文件
//html中添加一个导出元素 
//js文件$("#export).click(function(){    var content = "这是直接使用html5进行导出的";    var blob = new Blob([content], {type: "text/plain;charset=utf-8"});    saveAs(blob, "file.txt");//saveAs(blob,filename)});

以上就是"HTML5中如何对本地文件进行读取和写入"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

文件 系统 元素 内容 就是 服务器 知识 篇文章 服务 按钮 东西 只有 大小 文件名 需求 存储 支持 不合理 不同 复杂 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 eps连接同步服务器失败 银联 软件开发在哪工作 数据库完整性有哪些 乡村振兴局网络安全会议纪要 做软件开发最好选择哪些城市 软件开发在社会经济发展中的作用 数据库应建索引的数据项 网络安全和运维工作总结 网络安全经济及社会效益 江阴创新软件开发方法 mbd软件开发链 湖南边缘融合服务器云空间 网络安全购买申请 苹果qq购买会员连接不上服务器 从互联网的角度探讨科技发展 京东爆款软件开发厂商 网络安全容易被迷惑的误区 济南华虹软件开发公司 数据库查询购买数量之最 宿州联想服务器硬盘服务升级 农信社面试计算机软件开发 电视台网络安全建设情况 乡村振兴局网络安全会议纪要 广州智能驾驶软件开发公司 网络安全大厂offer怎么拿 兰州网络技术参数 办理电子临床数据库报价 鄞州手机软件开发商 服务器设置ntp功能 一个好的服务器怎么连接两个电
0