let reader = new FileReader()
reader.readAsDataURL(file.raw)
reader.onload = function () {
_this.fileList = fileList
_this.bartenderstring = reader.result.substring(reader.result.indexOf('base64') + 'base64,'.length)
}
直接将文件使用readAsDataURL进行转base64
let content = window.atob(this.bartenderstring)
const blob = new Blob([content])
let a = document.createElement('a');
a.download = file.name + '.btw';
a.href = URL.createObjectURL(blob);
let event = new MouseEvent('click');
a.dispatchEvent(event);
获取的值进行window.atob解析
从sqlserver拿到的字符串然后进行base64解析的文件和之前上传的文件不同了
已解决
decode (base64) {
let decode = window.atob(base64)
var len = decode.length
var bytes = new Uint8Array(len)
for (var i = 0; i < len; i++) {
bytes[i] = decode.charCodeAt(i)
}
// let str = decodeURI(decode)
return bytes
}
现将base64转为字节bytes,在进行new Blob就能得到ANSI编码文件