在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  Python  HTML/ 文件選擇表單最終獲取到的文件信息為什么是亂碼?

文件選擇表單最終獲取到的文件信息為什么是亂碼?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>

<script type="text/javascript">
    function xmTanUploadFile(obj){
        if (obj.files.length < 1) return;
        var file = obj.files[0];
        var reader = new FileReader();
        reader.readAsText(file);
        reader.onload = function (f) {
            console.log(f);
            document.getElementById("text").innerHTML = this.result;
        }
    }
</script>
<div>
    <label>選擇文件:</label>
    <input type="file" id="xmTanFile" onchange="xmTanUploadFile(this)"/>
    <div id="text"></div>
</div>
</body>
</html>

這段代碼為什么得到的result是亂碼?

clipboard.png

控制臺輸出如下:

clipboard.png

回答
編輯回答
尐飯團(tuán)

你用的是windows吧。
你的那個txt文件的的是GBK吧。
你的html是UTF-8。
so 編碼問題。想辦法唄。

1 文件轉(zhuǎn)碼
2 html用gbk格式。
3 js對內(nèi)容轉(zhuǎn)碼
2017年7月24日 20:25
編輯回答
你的瞳

是的,因?yàn)楹嗴w中文windows的系統(tǒng)內(nèi)碼是GBK的,網(wǎng)頁是utf8的話就會亂碼。
實(shí)際上windows系統(tǒng)在不同的語言設(shè)置下,內(nèi)碼也是不盡相同的。這在某些方面算是一個坑吧。

2017年8月7日 11:11
編輯回答
愛礙唉

這與你選中的文件編碼格式有關(guān),如果不是utf8則會顯示亂碼,你可以自己測試下png,txt,html等文件選取后打印的結(jié)果

2017年6月12日 00:14