.csv格式导出时出现奇怪字符



从一个带有重音的文本文件中我想把它变成一个。csv文件,我们可以下载

let data = decodeURI('a;b;é;É');
this.download(data, 'test.csv', 'data:text/csv;charset=utf-8');

这里的代码下载:

download(content, fileName, mimeType): boolean {
const a = document.createElement('a');
mimeType = mimeType || 'application/octet-stream;charset=UTF-8';
a.href = 'data:' + mimeType + ',' + encodeURIComponent(content);
a.setAttribute('download', fileName);
document.body.appendChild(a);
setTimeout(() => {
a.click();
document.body.removeChild(a);
}, 66);
return true;
}

我在excel中有奇怪的口音:

test.csv

a    b    é    É

如何解决这个问题?

'ufeff'前置到数据let data = 'ufeff'+decodeURI('a;b;é;É');,查看UTF与BOMhttps://en.wikipedia.org/wiki/Byte_order_mark

最新更新