所有分类
  • 所有分类
  • 后端开发
HTML5神器大揭秘!File、FileList、FileReader,下载还是上传?

HTML5神器大揭秘!File、FileList、FileReader,下载还是上传?

file接口在web页面上使用文件下载,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下File接口提供了与文件相关的信息,并且运行JavaScript在web页面上去访问文件中的内容。File接口在web页面上使用文件下载功能

看这儿!告诉你,HTML5里面有个超级棒的东西,叫做File!它除了能让我们传文件之外,还能直接下载文件!所以,今天就来说说这个File接口,File啦、FileList啦、FileReader之类的。希望大家看完这篇文章以后,下载网页上的文件就能轻松多~

File对象与FileList对象

HTML5里那个所谓的File就是咱们在网页上随便传东西的地方!人家可是input标签或者拖动文件时的神器DataTransfer对象搞出来的。千万别小瞧了File,它本质跟Blob是一模一样的,不过稍微牛逼点儿而已。想怎么折腾就怎么折腾。至于FileList么?它就像是一个装着好几个File的大篮子咯。想要知道有多少个,有几个的话,找找length,然后再摸索着item(index)去选自己心仪的那个就行。

说到网页上选文件的窍门,我觉得有些工具真的很实用,简单又好用。比如那个叫File和FileList的哥俩,还有那个名叫FileReader的小伙子,虽然身形小巧,但干起活儿来可是麻利得很。不管你是要找文件还是改文件,这三位小助手都能帮你做到,甚至还能挑战高难度任务!

var fileList = document.getElementById('fileItem').files

File对象属性

1. name属性:返回文件的文件名,是一个只读属性。

这个东西就是告诉你,咋弄出这样一份文件滴。千万别乱动

大小属性就是个方便的小帮手,告诉你文件的尺寸,让你清楚明了。可惜,它只能看,却无法操作呦~

FileReader对象

这个FileReader好比是你家门上的那把钥匙,能让你轻松找到别人家里的宝贝。它就是专门处理文件的小助手,只要敲敲代码,创建个FileReader(),就能直接使用!即使出了岔子,还有error事件来提醒你。

FileReader对象有几个重要方法:

记住用readAsArrayBuffer方法来搞定Blob让人郁闷的问题这样看文档就方便了,直接转成ArrayBuffer就能搞定!

直接把blob里面的东西解码成data URL呗,这不就是在读取文件吗?


那么简单点来说,你拿到了Blob这个东西比如说文档,首先得弄清楚它的编码方式,绝大多数情况是UTF-8。然后,把它转换为文本就轻而易举!

function previewFile() {
  var preview = document.querySelector('img');
  var file    = document.querySelector('input[type=file]').files[0];
  var reader  = new FileReader();
  reader.addEventListener("load", function () {
    preview.src = reader.result;
  }, false);
  if (file) {
    reader.readAsDataURL(file);
  }
}

搞定了,直接让用户选喜欢的文件开始搞,搞完了就接着干后面的活儿,然后把他们想要的东西告诉他们

使用HTML5 File接口访问本地文件

搞得定!这些HTML5文件就是你平时在电脑或手机网页里看到的那种文件。上传到网络平台,想怎么下就怎么下!

要找文件?你找input就对了呗!不管你想怎么搞,都能通过它找到选中的文件。再提醒你一句,如果你想让用户选多个文件的话,就在input里添个multiple属性设为真正行了,随心所欲选!

简单说,HTML5 File API就是给在网页上混迹的朋友们提供的方便实用神器,传文件、下文件都能轻松搞定,仿佛全是小孩子过家家那么容易!学会这几个神奇的API,就能让大家轻松实现传说中的”快刀斩乱麻”式的文件处理效果。


原文链接:https://www.icz.com/technicalinformation/web/javascript/2024/04/14491.html,转载请注明出处~~~
0

评论0

请先
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?