Метод read

Метод read читает данные из файла через файловый дескриптор, указанный в первом параметре метода. Во втором параметре задаем буфер, в третьем необязательном параметре - опции, которые включают понятие offset (по умолчанию равно 0), length (по умолчанию результат вычитания длины буфера в байтах минус offset), position (по умолчанию равно null). В четвертом необязательном параметре задаем коллбэк.

Синтаксис

javascriptfs.read(файловый дескриптор, буфер, [опции], [коллбэк]);

Пример

Давайте асинхронно прочитаем данные из файла через коллбэк. Сначала создадим буфер с помощью метода alloc, который устанавливает буфер определенного размера, в нашем случае это будет 1024 байт:

javascriptimport fs from 'fs';

let fileDescriptor = fs.openSync('file.txt');
const buffer = new Buffer.alloc(1024);

fs.read(fileDescriptor, buffer, function(err, bytes, buffer) {
  let data = buffer.toString('utf8');
  if (!err) {
    console.log(data);
  } else {
    console.log(err);
  }
});

Пример

Теперь давайте через readSync синхронно данные из файла:

javascriptimport fs from 'fs';

let fileDescriptor = fs.openSync('file.txt');
const buffer = new Buffer.alloc(1024);

try {
  fs.readSync(fileDescriptor, buffer);
  let data = buffer.toString('utf8');
  console.log(data);
} catch (err) {
  console.log(err);
}

Смотрите также

  • метод readFile,
    который читает файл
  • метод readdir,
    который читает папки
  • метод readlink,
    который читает символическую ссылку