使用Javascript FileReader和大文件

时间:2013-07-04 14:02:18

标签: javascript onload filereader

使用Javascript FileRead尝试读取大文件时遇到问题。

例如,我有一个200mb的文本文件,每次读取此文件时,代码都会停止工作。

可以读取文本文件,但是例如只有前10行或者在10mb之后停止读取?

这是我的代码:

var file = form.getEl().down('input[type=file]').dom.files[0];
var reader = new FileReader();

reader.onload = (function(theFile) {
                return function(e) {
                    data = e.target.result;
                    form.displayedData=data;
                };
            })(file);

reader.readAsText(file);

e.target.result始终包含文件的全部数据。

我可以在这做什么?

THX

1 个答案:

答案 0 :(得分:11)

这只会读取前10 mb:

var file = form.getEl().down('input[type=file]').dom.files[0];
var reader = new FileReader();

reader.onload = function(e) {
    var data = e.target.result;
    form.displayedData = data;
};

reader.readAsText(file.slice(0, 10 * 1024 * 1024));