关于javascript:Util-前端-Base64-转化为-File-格式

35次阅读

共计 570 个字符,预计需要花费 2 分钟才能阅读完成。

export function base64ToFile(base64Str) {
    // 将 base64 转换为 blob
    const dataURLtoBlob = function(dataurl) {var arr = dataurl.split(','),
            mime = arr[0].match(/:(.*?);/)[1],
            bstr = atob(arr[1]),
            n = bstr.length,
            u8arr = new Uint8Array(n);
        while (n--) {u8arr[n] = bstr.charCodeAt(n);
        }
        return new Blob([u8arr], {type: mime});
    }
    // 将 blob 转换为 file
    const blobToFile = function(theBlob, fileName){theBlob.lastModifiedDate = new Date();
        theBlob.name = fileName;
        return new window.File([theBlob],
            theBlob.name,
            {type: theBlob.type}
        );
    }
    // 调用
    var blob = dataURLtoBlob(base64Str);
    var file = blobToFile(blob, Math.random().toString(36).substr(2));

    return file
}

正文完
 0