Метод ftruncate - размер файла через файловый дескриптор на NodeJS

Метод ftruncate изменяет размер файла через файловый дескриптор. В первом параметре метода указывается нужный нам файловый дескриптор, во втором необязательном параметре задаем длину файла, на которую будет изменен размер файла. По умолчанию значение этого параметра равно 0 и в этом случае весь файл очистится. В третьем необязательном параметре задаем коллбэк.

Синтаксис

fs.ftruncate(файловый дескриптор, длина файла, [коллбэк]);

Пример

Давайте асинхронно изменим размер файла через коллбэк. Изначально добавим в файл ftruncate строку 'text':

import fs from 'fs'; let fileDescriptor = fs.openSync('file.txt', 'r+'); console.log('сontent before truncate:' + fs.readFileSync('file.txt', 'utf8')); fs.ftruncate(fileDescriptor, 2, err => { if (!err) { console.log('сontent after truncate:' + fs.readFileSync('file.txt', 'utf8')); } else { console.log(err); } });

После выполнения кода мы получим:

'сontent before truncate:text' 'сontent after truncate:te'

Пример

Давайте синхронно изменим размер файла через ftruncateSync:

import fs from 'fs'; let fileDescriptor = fs.openSync('file.txt', 'r+'); console.log('сontent before truncate:' + fs.readFileSync('file.txt', 'utf8')); try { fs.ftruncateSync(fileDescriptor, 2) console.log('сontent after truncate:' + fs.readFileSync('file.txt', 'utf8')); } catch (err) { console.log(err); }

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

  • метод truncate,
    который изменяет размер файла
  • метод stat,
    который возвращает статистику о файле или папки



Чат с GPT Компилятор