逐行读取
fileList = document.getElementById("file").files;
file = fileList[0];
//console.log(file);
console.time("sort");
var reader = new FileReader();
reader.onload = function (progressEvent) {
// Entire file
//console.log(this.result);
// By lines
var lines = this.result.split('\n');
for (var line = 0; line < lines.length; line++) {
// console.log(">>>>>>");
// console.log(lines[line]);
logList.push(lines[line]);
}
console.timeEnd("sort");
};
reader.readAsText(file);
按字节数分割
利用file.size 循环
if (file.webkitSlice) {
console.log("webkitSlice--->");
var blob = file.webkitSlice(startSize, endSize);
} else if (file.mozSlice) {
console.log("mozSlice--->");
var blob = file.mozSlice(startSize, endSize);
} else {
console.log("Slice--->");
var blob = file.slice(startSize, endSize);
}
try {
var reader = new FileReader();
reader.readAsArrayBuffer(blob);
reader.onload = function loaded(evt) {
console.log(evt);
var ArrayBuffer = evt.target.result;
console.log(ArrayBuffer.byteLength);
//console.log(String.fromCharCode.apply(null, new Uint8Array(ArrayBuffer)));
log("发送文件第" + (i++) + "部分");
}
} catch (error) {
console.log("555", error);
}