如何使用javascript读取本地文本文件?

时间:2012-03-18 06:05:43

标签: javascript file-io

我试图在本地选择一个文件并逐行读取它中的文本来解释它。我的程序是读取文本文件并从中读取问题以制作测试程序。该文件不应上传,只能在本地阅读。如果解决方案仅适用于chrome和firefox,那也没关系。

我已经尝试了很多东西,但到目前为止,我似乎看到的是出于安全原因这是不可能的,或者它是不可行的。我

这是我目前的代码: http://pastebin.com/uKvEfvZZ

2 个答案:

答案 0 :(得分:5)

这是demo

HTML:

<input type="file" id="fileinput" multiple />

JS:

function readMultipleFiles(evt) {
    //Retrieve all the files from the FileList object
    var files = evt.target.files;

    if (files) {
        for (var i = 0, f; f = files[i]; i++) {
            var r = new FileReader();
            r.onload = (function (f) {
                return function (e) {
                    var contents = e.target.result;
                    alert(contents);
                };
            })(f);
            r.readAsText(f);
        }
    } else {
        alert("Failed to load files");
    }
}
document.getElementById('fileinput').addEventListener('change', readMultipleFiles, false);​

答案 1 :(得分:4)

使用HTML5 file API。它允许您在本地选择和读取文件。