Я пытаюсь прочитать некоторые данные кусками (100 КБ) из большого файла с помощью узла fs.read () асинхронно и проанализировать его
Я хочу повторить это и прочитать весь файл, не блокируя его
Может кто-нибудь предложить мне, как использовать обещания в коде ниже, не выполняя следующий набор кода, пока этот процесс не будет сделан
Могу ли я использовать async / await для достижения этого
var readChunkData = function( position=0){
fs.open(fileName, "r+", (err,fd) => {
if(err) throw err;
var bufferSize = MAX_BUFFER_SIZE;
fs.read(fd, Buffer.alloc(bufferSize), 0, bufferSize ,position, (err, bytesRead, buffer) => {
fs.close(fd, (err) => {
if(err) throw err;
})
//Some parsing logic usind data read
parseData(buffer)
position += MAX_BUFFER_SIZE
if( position < fileSize)
{
readChunkData(position)
}
else{
return;
}
})
})
}