Метод read - чтение файла через файловый дескриптор на NodeJS
Метод read
читает данные из файла
через файловый дескриптор, указанный в первом параметре
метода. Во втором параметре задаем буфер,
в третьем необязательном параметре - опции, которые включают
понятие offset
(по умолчанию равно 0
),
length
(по умолчанию результат вычитания длины буфера
в байтах минус offset
), position
(по умолчанию
равно null
). В четвертом необязательном параметре
задаем коллбэк.
Синтаксис
fs.read(файловый дескриптор, буфер, [опции], [коллбэк]);
Пример
Давайте асинхронно прочитаем
данные из файла через коллбэк. Сначала
создадим буфер с помощью метода alloc
,
который устанавливает буфер определенного размера,
в нашем случае это будет 1024
байт:
import 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
синхронно данные из файла:
import 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);
}