Задать вопрос
@Jumandjilos

Чем отличается readFIle и writeFile от потоков createReadStream и createWriteStream?

Вопрос в заголовке, когда использовать потоки, а когда простую запись?
  • Вопрос задан
  • 255 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
readFile читает файл целиком и отдает контент в callback-функцию. Подходит для небольших файлов, либо для типов файлов, не поддерживающих поточное чтение (например, нужна гарантия целостности всего содержимого). Плюс, так как весь контент хранится в переменной, то все содержимое файла будет в памяти.
createReadStream создает объект FileStream и дает возможность читать файл по частям. Соответственно, в памяти будет только текущий кусок. Например, можно обратывать так XML или JSON. Или отдавать файл по сети.

С записью все по аналогии.

P.S. И JSON и XML поддерживают поточное чтение, но при этом файл может быть неконсистентным, например, поврежденным в конце.

Upd. Ответ исправлен по замечанию @Smlnc и Алексей Тен
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы