readFile — HackerX https://hackerx.ru Блог о программировании, СУБД, сетях и алгоритмах. Уроки и статьи по разным языкам программирования Wed, 11 Jul 2018 07:15:23 +0000 ru-RU hourly 1 https://wordpress.org/?v=4.9.8 Синхронное и асинхронное чтение файла в Node.js https://hackerx.ru/fs-readfile-and-fs-readfilesync/ https://hackerx.ru/fs-readfile-and-fs-readfilesync/#respond Sat, 03 Dec 2016 11:08:29 +0000 https://hackerx.ru/?p=336 Для работы с файлами в Node.js нам нужно подключить модуль fs. После подключения модуля, в переменную fs мы получим объект, который имеет все необходимые методы и свойства для работы с файлами. const fs = require("fs"); // Подключаем модуль fs   В этой статье мы узнаем как можно читать файлы в Node.js. В Node.js читать файлы можно двумя способами […]

The post Синхронное и асинхронное чтение файла в Node.js appeared first on HackerX.

]]>
Для работы с файлами в Node.js нам нужно подключить модуль fs. После подключения модуля, в переменную fs мы получим объект, который имеет все необходимые методы и свойства для работы с файлами.

const fs = require("fs");  // Подключаем модуль fs

 

В этой статье мы узнаем как можно читать файлы в Node.js. В Node.js читать файлы можно двумя способами — асинхронный и синхронный.

Асинхронное чтение файла — fs.readFile( )

Метод readFile может принимать 3 аргумента. Из них второй аргумент является обязательным.

fs.readFile(файл[, опции], callback)

  • файл <String> | <Buffer> | <Integer> Имя / адрес файла или файловый дескриптор
  • опции <Object> | <String>
    • кодировка <String> | <Null> по умолчанию = null
    • флаг <String> по умолчанию = ‘r’
  • callback <Function>
  • Первый аргумент — это адрес файла, который нужно читать;
  • Второй аргумент — это опции, который является обязательным. Опции можно указать в виде объекта (для указание нескольких опций) и в виде строки;
  • Третий аргумент — это функция обратного вызова (callback функция). Функция вызывается после чтения файла.

 

Пример чтение файла асинхронно:

const fs = require("fs");

fs.readFile('./test.txt', (err, data) => {
    if (err) throw err;
    console.log(data);
});

В функцию обратного вызова передается два аргумента (err, data). Если при чтение файла возникла ошибка, то в переменную err получим объект с описанием ошибки. А аргумент data содержит содержимое файла.

Если при чтение файла ми не указали кодировку, то данные будут возвращены в виде буфера.

Пример чтение файла с указанием опции:

const fs = require("fs");

fs.readFile('./test.txt', 'utf8', (err, data) => {
    if (err) throw err;
    console.log(data);
});

 

Синхронное чтение файла — fs.readFileSync( )

Многие асинхронные функции в Node.js имеют синхронный вариант. И для чтение файлов в синхронном режиме есть метод readFileSync. Он может принимать 2 аргумента.

fs.readFileSync(файл[, опции])

  • файл <String> | <Buffer> | <Integer> Имя / адрес файла или файловый дескриптор
  • опции <Object> | <String>
    • кодировка <String> | <Null> по умолчанию = null
    • флаг <String> по умолчанию = ‘r’
  • Первый аргумент — это адрес файла, который нужно читать;
  • Второй аргумент — это опции, который является обязательным. Опции можно указать в виде объекта (для указание нескольких опций) и в виде строки;

Пример чтение файла синхронно:

const fs = require("fs");

let data = fs.readFileSync('./test.txt', 'utf8');
console.log(data);

 

The post Синхронное и асинхронное чтение файла в Node.js appeared first on HackerX.

]]>
https://hackerx.ru/fs-readfile-and-fs-readfilesync/feed/ 0