美文网首页
arraybuffer,base64,blob,flie相互转化

arraybuffer,base64,blob,flie相互转化

作者: 洛梓煕 | 来源:发表于2021-06-23 10:50 被阅读0次

//arraybuffer生成base64的图片

```

  arrayBufferToBase64(buffer) {

    return (

      "data:image/jpeg;base64," +

      window.btoa(String.fromCharCode(...new Uint8Array(buffer)))

    );

  },

```

//arraybuffer转blob

```

 arrayBufferToBlob(arrayBuffer, filename) {

                return new Blob([arrayBuffer], { type: filename });

            }

```

//blob转arraybuffer

```

blobToArrayBuffer(blob, callback) {

                let reader = new FileReader();

                reader.readAsArrayBuffer(blob);

                reader.onload = function () {

                    return callback(this.result);

                }

```

//blob转化成file

```

blobToFile(blob, filename){

returnnewFile([blob], filename, {type: blob.type })

```

//base64转化成file

```

dataURLtoFile(dataurl, filename){

 var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],

  bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);

  while(n--){

      u8arr[n] = bstr.charCodeAt(n);

  }

  return new File([u8arr], filename, {type:mime});

```

//blob转化成base64

```

blobToDataURI(blob, callback){

    varreader =newFileReader(); 

     reader.readAsDataURL(blob);

     reader.onload =function(e){ callback(e.target.result); }

}

```

相关文章

网友评论

      本文标题:arraybuffer,base64,blob,flie相互转化

      本文链接:https://www.haomeiwen.com/subject/lhtbyltx.html