Как правильно читать файл частями в node.js?

Пользователь

от vladimir , в категории: JavaScript , 8 месяцев назад

Как правильно читать файл частями в node.js?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от olen.shanahan , 8 месяцев назад

@vladimir 

Чтение файла частями (или чанками) в Node.js можно выполнить с использованием метода createReadStream() модуля fs.


Пример использования метода createReadStream() для чтения файла частями:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
const fs = require('fs');

const readStream = fs.createReadStream('file.txt', { highWaterMark: 1024 });

readStream.on('data', (chunk) => {
  console.log(chunk);
});

readStream.on('end', () => {
  console.log('File reading finished.');
});

readStream.on('error', (err) => {
  console.log(err);
});


В приведенном выше примере мы создаем объект readStream, который читает файл file.txt частями размером 1024 байт. Когда новая часть файла доступна для чтения, событие data вызывается и обработчик получает доступ к новой части через параметр chunk. Когда файл полностью прочитан, событие end вызывается, и мы можем выполнить завершающие действия. Если во время чтения файла возникает ошибка, событие error вызывается, и мы можем обработать ошибку.


Обратите внимание, что размер частей можно настроить с помощью параметра highWaterMark. Если параметр не указан, размер частей по умолчанию равен 64 КБ.