fileReader对象读取txt文件乱码问题 以及如何获取文件的url路径(绝对路径)

        <input type="file" @change="aaa($event)">
        <div id="hi"></div>

以上是html(用的是vue,所以用@绑定的)

今天想用js读取txt文件,但是一直乱码,后来查到,把reader.readAsText(file,'gb2312')中的编码格式设置成gb2312就不乱码了

js:
       aaa(event){
            var self=this,
            files=event.target.files,
            file,
            htmlBox=document.getElementById("hi");
            if(files&&files.length>0){
                file=files[0];
                console.log(file)
            }
            let reader=new FileReader();
            
            reader.onload = function (e) {
           console.log(e.target.result);
                htmlBox.innerHTML=e.target.result;
        }
            // reader.readAsDataURL(file);
            reader.readAsText(file,'gb2312')
        }

 如何获取文件的url路径

js

       getObjectURL(file) {//创建url路径
            let url = null;
            if (window.createObjectURL != undefined) {
                // basic
                url = window.createObjectURL(file);
            } else if (window.URL != undefined) {
                // mozilla(firefox)
                url = window.URL.createObjectURL(file);
            } else if (window.webkitURL != undefined) {
                // webkit or chrome
                url = window.webkitURL.createObjectURL(file);
            }
            return url;
        },       
原文地址:https://www.cnblogs.com/fqh123/p/10958871.html