如何在javascript中打开任何类型的文件并将其保存为字符串

如何在javascript中打开任何类型的文件并将其保存为字符串,javascript,file,Javascript,File,因此,当您在文本编辑器中打开任何文件时,无论是图像、声音文件还是代码集,在文本编辑器中都会出现文本格式的数据类型,我如何使用javascript(在html文档中)打开任何文件并将其保存为字符串形式的变量,就像在文本编辑器中显示的那样 //something like this var file = getFile(c:/path/location/goes/here); document.write(file); //then it prints the files' text conte

因此,当您在文本编辑器中打开任何文件时,无论是图像、声音文件还是代码集,在文本编辑器中都会出现文本格式的数据类型,我如何使用javascript(在html文档中)打开任何文件并将其保存为字符串形式的变量,就像在文本编辑器中显示的那样

//something like this

var file = getFile(c:/path/location/goes/here);
document.write(file);

//then it prints the files' text content onto the document

您可以使用
ajax
加载文件,或者如果您想要纯js,请尝试以下代码片段

函数readBlob(){ var files=document.getElementById('files').files; 如果(!files.length){ 警报('请选择一个文件!'); 返回; } var file=files[0]; var start=0; var stop=file.size-1; var reader=new FileReader(); //如果我们使用onloadend,我们需要检查readyState。 reader.onloadend=函数(evt){ 如果(evt.target.readyState==FileReader.DONE){//DONE==2 document.getElementById('byte_content')。textContent=evt.target.result; document.getElementById('byte_range')。textContent= ['读取字节:',开始+1',-',停止+1, 'of',file.size',byte file'].join(“”); } }; var blob=file.slice(开始、停止+1); reader.readAsBinaryString(blob); }

#字节内容{
保证金:5px0;
最大高度:100px;
溢出y:自动;
溢出x:隐藏;
}
#字节\范围{margin top:5px;}


遗憾的是,单用Javascript是不可能的。好吧,我知道用python是可以做到的,那么有没有办法在python中做到这一点,然后将输出提供给js文档,或者将py脚本托管在js中。您想在浏览器中做到这一点?如果是这样,停止尝试为什么我应该停止尝试?这是我想学习的一件事。什么是ajax?这需要jquery吗?我也会用doc.write(filename)来获取文件吗?好的,我插入了这段新代码,它可以工作,但它只显示:test.txt(text/plain)-4字节,上次修改:2018年2月13日,我如何打开文件并将其保存到js variableJavaScript错误:未捕获类型错误:无法将属性“textContent”设置为null,如何修复此错误忘记添加这两个div