Angular 8-将base64解析为文件
我正试图用这段代码转换base64文件Angular 8-将base64解析为文件,angular,Angular,我正试图用这段代码转换base64文件 new File([new Blob([BASE64FILE], {type: 'image/png'})],NAME, {type: 'image/png'}) 有点不对劲。当我将它发送到数据库时,它的格式不正确(不是图像),并且没有显示任何内容 所以问题是:将base64转换为文件的正确方法是什么?我当时也有类似的问题。无论如何,这将对您有用: const base64 = '...'; const imageName = 'name.png'
new File([new Blob([BASE64FILE], {type: 'image/png'})],NAME, {type: 'image/png'})
有点不对劲。当我将它发送到数据库时,它的格式不正确(不是图像),并且没有显示任何内容
所以问题是:将base64转换为文件的正确方法是什么?我当时也有类似的问题。无论如何,这将对您有用:
const base64 = '...';
const imageName = 'name.png';
const imageBlob = this.dataURItoBlob(base64);
const imageFile = new File([imageBlob], imageName, { type: 'image/png' });
以及功能:
dataURItoBlob(dataURI) {
const byteString = window.atob(dataURI);
const arrayBuffer = new ArrayBuffer(byteString.length);
const int8Array = new Uint8Array(arrayBuffer);
for (let i = 0; i < byteString.length; i++) {
int8Array[i] = byteString.charCodeAt(i);
}
const blob = new Blob([int8Array], { type: 'image/png' });
return blob;
}
dataURItoBlob(dataURI){
constbytestring=window.atob(dataURI);
const arrayBuffer=新的arrayBuffer(byteString.length);
常量int8Array=新的Uint8Array(arrayBuffer);
for(设i=0;i
我花了这么长时间才找到这个答案,我希望我能多次投票。