我可以使用HTML5/Javascript来加载特定数量的行而不是本地文件的字节吗?
我目前有一些代码,允许用户选择一个本地文件,以文本形式读入该文件,然后将该文本输出到文本区域。但是,我只想读取前N行,因为文件可能大于10GB 我知道可以以字节的形式读取文件块,但我想知道是否可以以同样的方式读取文本文件行。这是我目前的代码:我可以使用HTML5/Javascript来加载特定数量的行而不是本地文件的字节吗?,javascript,html,io,Javascript,Html,Io,我目前有一些代码,允许用户选择一个本地文件,以文本形式读入该文件,然后将该文本输出到文本区域。但是,我只想读取前N行,因为文件可能大于10GB 我知道可以以字节的形式读取文件块,但我想知道是否可以以同样的方式读取文本文件行。这是我目前的代码: <input type="file" id="files" name="file" /><br> <script> function handleFileSelect(evt) { var fi
<input type="file" id="files" name="file" /><br>
<script>
function handleFileSelect(evt) {
var files = document.getElementById('files').files;
if (!files.length) {
alert('Please select a file!');
return;
}
var file = files[0];
var reader = new FileReader();
reader.onloadend = function(evt) {
if (evt.target.readyState == FileReader.DONE) { // DONE == 2
document.getElementById('myInput').textContent = evt.target.result;
}
};
reader.readAsText(file, "UTF-8");
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
…但需要行而不是字节范围。谢谢 你只需要抓取块,找到你自己的台词。只要记录你见过多少个阿姆尼,你不需要知道有多少…我明白你的意思。所以,只需要抓取一小块数据,数一数到目前为止我有多少行,如果不够,再抓取另一块?我理解正确吗?您是否尝试过像前面的回答中那样使用YQL?这正是我的意思。我在某处有这个确切的代码,但我找不到。。。
var blob = file.slice(startingByte, endindByte);
reader.readAsBinaryString(blob);