base64转为blob,然后转成file文件,具体步骤以及注释说明,以及使用案例


1. 将base64字符串转为blob对象:

function convertBase64ToBlob(base64Str) {
    
    

  // 将base64字符串转为二进制数据
  const byteCharacters = atob(base64Str);

  // 创建Blob对象
  const blob = new Blob([byteCharacters], {
    
     type: 'application/octet-stream' });

  return blob;
}

2. 将blob对象转为file对象:

function convertBlobToFile(blob, fileName) {
    
    
  // 创建File对象
  const file = new File([blob], fileName, {
    
     type: blob.type });

  return file;
}

注释说明:

  • convertBase64ToBlob 方法将base64字符串转为blob对象,使用了atob方法将base64字符串转为二进制数据,再使用Blob构造函数创建Blob对象,并指定文件类型为application/octet-stream
  • convertBlobToFile 方法将blob对象转为file对象,使用了File构造函数创建File对象。

3. 使用案例:

示例代码演示了将一个base64图片字符串转为file对象的例子:

const base64Str = 'data:image/png;base64,iVBORw0KG...'; // 用实际的base64字符串替换
const fileName = 'image.png';

const blob = convertBase64ToBlob(base64Str);
const file = convertBlobToFile(blob, fileName);

console.log(file);

输出结果:

File(85) {
    
    name: "image.png", lastModified: 1632490063760, lastModifiedDate: Tue Sep 24 2021 16:07:43 GMT+0800 (中国标准时间), webkitRelativePath: "", size: 85,}

猜你喜欢

转载自blog.csdn.net/qq_45585640/article/details/132877182