Javascript逐行读取文本文件

Javascript逐行读取文本文件,javascript,html,file,text,line,Javascript,Html,File,Text,Line,Javascript: <script src="../plugin/jquery-3.1.0.min.js"></script> <script> $(document).ready(function(){ $('#test').click(function(){ var txtFile = '../fileupload/mail.txt'; var file = new File(txtFi

Javascript:

<script src="../plugin/jquery-3.1.0.min.js"></script>
<script>
    $(document).ready(function(){
       $('#test').click(function(){
           var txtFile = '../fileupload/mail.txt';
           var file = new File(txtFile);
           file.open("r");
           while (!file.eof) {
               alert(file.readln());
           }
           file.close();
       });
    });
</script>
HTML:


当我单击check按钮时,Javascript将逐行读取文件。但它不运行:。请帮助我修复它

您无法通过浏览器托管的JavaScript以这种方式读取文件。只接受一个参数,并且没有open、readln或close方法,也没有eof属性。无论您查看的是什么引用,它都不适用于基于浏览器的文件对象

如果您是从一个合适的网页上运行此功能,那么您可以通过ajax或web从自己的服务器上读取资源


如果您试图读取本地文件,则必须让用户通过input type=file识别您无法为其执行的文件,然后使用读取文件的内容。有一个文本和二进制文件的例子。

如果你想创建并下载一个文件,我建议你看看

否则,如果你想上传一个文件,我会添加一个输入类型=文件id=文件测试,然后使用


您知道是否正在触发单击事件吗?i、 e:你在点击功能中放了console.log了吗
<button type="submit" class="btn btn-default" id="test">Check</button>
var blob = new Blob(["r"], {type: "text/plain;charset=utf-8"});
saveAs(blob, "mail.txt");
 $('#file-test').change(function(e) {
   var doc = event.target.files.document;
   var reader = new FileReader();
   reader.onload = function(event) {
     // Then you can do something with the result
     console.log(event.target.result)
   };

   reader.readAsText(doc);
 }