我正在尝试使用此代码转换 base64 文件
new File([new Blob([BASE64FILE], {type: 'image/png'})],NAME, {type: 'image/png'})
有什么不对劲。当我将它发送到数据库时,格式不正确(不是图像)并且不显示任何内容。
所以问题是:将 base64 转换为 File 的正确方法是什么?
最佳答案
我当时也有类似的问题。无论如何,这对你有用:
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;
}
关于Angular 8 - 将 base64 解析为文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58502673/