1.文件转base64 (我这里是录音文件)
//录音文件转base64
export function fileToBase64(audioFile, callback) {
var reader = new FileReader();
reader.onload = function (event) {
var data = event.target?.result?.split(",");
// console.log(data);
// decodedImageData = btoa(data[1]);
// var data1 = event.target?.result
callback(data[1]);
};
reader.readAsDataURL(audioFile);
}
2.base64 转 二进制流(blob) (我这里是转录音文件)
// base64 转 二进制流(blob)
export function dataURLtoBlob(dataurl) {
// console.log(dataurl);
// let str = "data:audio/wav;base64," + dataurl.slice(2)
// console.log(str);
let mime = "audio/wav"
// var arr = str.split(","),
// mime = arr[0].match(/:(.*?);/),
// let bstr = atob(arr[1])
let bstr = atob(dataurl)
let n = bstr.length
let u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new Blob([u8arr], {
type: mime,
});
}