我有我需要解析的長文件。因爲它很長,我需要按塊來完成它。我試過這個:javascript FileReader - 解析長文件塊
function parseFile(file){
var chunkSize = 2000;
var fileSize = (file.size - 1);
var foo = function(e){
console.log(e.target.result);
};
for(var i =0; i < fileSize; i += chunkSize)
{
(function(fil, start) {
var reader = new FileReader();
var blob = fil.slice(start, chunkSize + 1);
reader.onload = foo;
reader.readAsText(blob);
})(file, i);
}
}
運行後,我只看到控制檯中的第一個塊。如果我將'console.log'更改爲jquery附加到某個div,我只能看到該div中的第一個塊。其他大塊呢?如何使它工作?
循環是否可靠?我對FileReader API比較陌生,但我發現它是異步的。我們如何確保整個文件在「for循環」結束後都被完全處理? – alediaferia