bolb与FileReader使用笔记

bolb 、Int8Array、ArrayBuffer为h5在处理文件、视频、音频等二进制流数据新增底层数据转换处理类型。

bolb格式

在实际使用中生成类似数组的对象,只是承载的是文件流。

FileReader

说明制定FileReader继承流bolb格式,但是其this.result其实是文件流base64格式,是真实文件。

URL.createObjectURL 、revokeObjectURL

传入bolb或file,转成字符串,指向内存中bolb或file地址,浏览器关闭后自动释放。

使用fileReader读取文件并通过bolb格式展示demo,将一个文件或者图片分片展示

  let file = document.querySelector("#file");
       file.addEventListener("change",function(ev){
  let tar = ev.target.files[0];
  let files = new FileReader();
       files.readAsArrayBuffer(tar);
       files.onload=function(){
       let block =Math.ceil(this.result.byteLength/1024);  //切割x段
       let i = 0, th = this;
       let show = ()=>{
             setTimeout(a=>{
                                     let bolb = new Blob([th.result.slice(0,i*1024+1024)]);//每次添加一个片段
                                    let url = URL.createObjectURL(bolb); //创建bolb格式URL
                                    let img =  document.querySelector("#img");
                                      img.src = url;  //这里做的事没秒加载,可以改动为分片上传
                                      if(i

你可能感兴趣的:(bolb与FileReader使用笔记)