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

文章目录

  • 1. 将base64字符串转为blob对象:
  • 2. 将blob对象转为file对象:
  • 3. 使用案例:


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,}

你可能感兴趣的:(javascript,前端,开发语言)