可能是上传的时候每个人的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)
}
大致代码是这样的
在后端设置header('Content-Type: text/plain; charset=utf-8')
或者前端不设置预览,直接下载就好,主要下载时候注意编码格式
已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。
1、这是因为上传这个文件的人,设置的TXT编辑器编码有问题,和前端没有问题,导致浏览器识别不了
2、如果你下载到本地,在编辑器里面打开,你会发现正常,因为很多编辑器有自动转码的功能
已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。
13 回答12.8k 阅读
8 回答2.5k 阅读
2 回答5k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
5 回答805 阅读
3 回答2.1k 阅读
5 回答1.1k 阅读✓ 已解决
改用saveAs(url)下载