6 个回答

改用saveAs(url)下载

可能是上传的时候每个人的txt编码不同,导致下载的时候编码不一样,导致乱码,可以在上传的时候统一编码,将编码转成GB2312,再下载就没问题题了

const reader = new FileReader()
      reader.readAsText(res.raw, 'gb2312') 
      reader.onload = async function(event) {
        let newBlob = new Blob([reader.result])
        let file = await new window.File([newBlob], '222.txt');
        let param = new FormData()
        param.append('file', file.file)
}

大致代码是这样的

一般来说是编码问题,和前端关系不大=。=当然你也可以下载下来重新转码

1、这是因为上传这个文件的人,设置的TXT编辑器编码有问题,和前端没有问题,导致浏览器识别不了
2、如果你下载到本地,在编辑器里面打开,你会发现正常,因为很多编辑器有自动转码的功能

已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。

下载的时候设置下格式呢,new Blob([req.response], {type: 'application/json;charset=utf-8'})

推荐问题