window.open()打开txt文件中文乱码

seristudy
  • 57

在js代码里用以下代码打开txt文件会造成中文乱码。请问有什么解决方法吗?

let newWin = window.open('_blank');
newWin.location = 'a.txt';
//newWin.document.charset="UTF-8";
console.log('88888:',newWin.document.charset)
newWin.document.characterSet="UTF-8";

使用了charset等几种属性赋值,但是charset等属性都是只读属性,所以这种方法没有效果。
图片描述

回复
阅读 5.9k
3 个回答

var newUrl= "data:text/html;charset=utf-8,"+ encodeURI(url).replace(/#/g,"%23");
window.open(newUrl);

在后端设置header('Content-Type: text/plain; charset=utf-8')。
或者不要在新页面打开,直接在当前网页里用<pre>或者<code>标签插入txt文件的内容。

宣传栏