js生成文件file对象,blob和file相互转换

有时候会需要将临时的字符串或者表格数据、图片等转换成txt文档

一、 blob转成file

主要是使用file的构造函数

let file = new window.File([blob], filename, filetype)

实际应用示例如下:

let blob = new Blob(['这里是要转换的字符串或者图片等'], {type: "text/plain;charset=utf-8"})

let textContain = transToFile(blob, "文件名", "text/plain")

// 这么写是因为文件转换是异步任务
transToFile = async(blob, fileName, fileType) => {
    return new window.File([blob, fileName, {type: fileType}])
}

// 转换完成后可以将file对象传给接口
textContain.then( (res)=> {
    let file = res
    console.log(res)
})

二、file读或者转成blob 

  •  使用FileReader
  • let blob = new Blob(['这里是要转换的字符串或者图片等'], {type: "text/plain;charset=utf-8"})
    let reader = new  FileReader()
    reader.readAsDataURL(blob)
    reader.onload = (e)=> {
        console.log('e就是读取文件返回的对象')
    }

三、blob转成text文本字符

async() => {
    return await (new Response(blob).text())
}

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值