Nodejs. Як записувати дані в потік.
Відео: Реалізація Transform-потоків в Node.js
Всім привіт! У цій статті ми розглянемо, як записувати дані в потік в NodeJS.
У минулій статті ми дізналися, як можна вважати дані, отримані з потоку, а в цій поговоримо про те, як їх туди можна записувати.
Насправді, тут немає нічого складного. Код буде майже такою ж, як і в попередньому випадку. Давайте відразу до нього і перейдемо:
var http =require(`Http`) -
var fs =require(`Fs`) -
var myReadStream = fs.createReadStream(__dirname +`/readMe.txt`,`Utf8`) -
var myWriteStream = fs.createWriteStream(__dirname +`/writeMe.txt`) -
myReadStream.on(`Data`,function(chunk){
console.log(`Отримано новий обсяг даних:`) -
myWriteStream.write(chunk) -
}) -
Давайте розберемося, що тут відбувається. Спочатку ми створюємо потік для читання інформації, використовуючи знання, отримані в минулій статті. Далі ми викликаємо анонімну функцію кожен раз, коли отримуємо нові дані за допомогою процесора подій, виводимо про це інформацію за допомогою функції console.log (), далі викликаємо метод write () у потоку для запису, який був написаний вище, і створюється він, як ви можете бачити, приблизно таким же чином, як і потік для читання. Єдине, що в агрумент ми вказуємо шлях до файлу, в який повинна бути записана та інформація, яка прийде з потоку для читання. У методі write () ми вказуємо, які дані ми хочемо записати, і це як раз ті дані, які були отримані з потоку для читання. Якщо ви зараз запустіть файл app.js, то побачите кілька повідомлень про отримання інформації, а також створиться новий файл writeMe.txt, в якому буде вся та інформація, яка міститься в файлі readMe.txt.
Відео: скрінкасти по Node.JS
Звичайно, те ж саме ви можете зробити за допомогою файлової системи, і ми вже це робили в попередніх статтях, але тут ми використовуємо потоки, що значно прискорить обробку інформації з причин, які були описані в першій статті по цій темі.
Оскільки ми часто зчитуємо інформацію і записуємо її кудись, використовуючи потоки, є спосіб прискорити це за допомогою pipes. Але про це ми поговоримо в наступній статті.
Відео: 002. node.js - Сергій Гоголєв
Дякую за увагу!
- Nodejs. Як створити сервер.
- Nodejs. Що таке query strings.
- Nodejs. Як відправити дані в форматі json.
- Nodejs. Як зчитувати дані з потоку.
- Nodejs. Що таке pipe ().
- Nodejs. Як працюють function expression.
- Nodejs. Що таке потоки і буфери.
- Nodejs. Як створити "список справ". Частина 2.
- Nodejs. Як обробляти post запити.
- Nodejs. Шаблони модулів.
- Nodejs. Оброблювач подій.
- Nodejs. Движок v8.
- Nodejs. Навігація по сторінках.
- Nodejs. Template engine. Частина 2.
- Nodejs. Параметри маршрутизації в express.
- Nodejs. Пакет nodemon.
- Nodejs. Створення та видалення директорій.
- Nodejs. Модулі.
- Nodejs. Глобальний об`єкт.
- Nodejs. Template engine. Частина 1.
- Nodejs. Запис і читання файлів.