js生成csv文件用excel打开出现中文乱码问题的解决

          var content = "问题, 回答"; 
          // utf-8保存的csv格式文件要让Excel正常打开的话,必须加入在文件最前面加入 \uFEFF。
          var csv = "\uFEFF" + content;
          //定义文件内容,类型必须为Blob 否则createObjectURL会报错
          let content = new Blob([csv], {type: 'text/plain'});
          //生成url对象
          let urlObject = window.URL || window.webkitURL || window;
          let url = urlObject.createObjectURL(content);
          //生成<a></a>DOM元素
          let el = document.createElement("a");
          //链接赋值
          el.href = url;
          el.style.display = 'none';
          el.download = "样例文件.csv";
          //必须点击否则不会下载
          el.click();
          //移除链接释放资源
          urlObject.revokeObjectURL(url);

utf-8保存的csv格式文件要让Excel正常打开的话,必须加入在文件最前面加入BOM(Byte order)。—— \uFEFF

如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。

转载自 使用js生成csv文件并解决excel打开出现中文乱码的问题
对于上方链接的这位博主,表示感谢。虽是个小问题,却解决了困扰我一时的BUG。
(注:由于是几乎是完全转载,就不加自己的标识了。如需删除此文,请私信我。)

猜你喜欢

转载自blog.csdn.net/Trend_H/article/details/84675954