Angular 8-将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'

我正试图用这段代码转换base64文件

  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
我花了这么长时间才找到这个答案,我希望我能多次投票。