Создание, чтение и удаление папок в NodeJS

Для создания, чтения и удаление папок в NodeJS используется модуль fs. В этой статье разобраны примеры, описывающие все эти функции.

Создание папки

Для создания папок в NodeJS используется метод mkdir. В его первый аргумент передаётся название папки (относительный или абсолютный путь к ней), которую нужно создать. Второй параметр опционален и не работает в Windows. В нём можно записать права доступа на эту папку (числа). А в третьем параметре находится callback функция, которая возвращает ошибку. Приведём пример:
let fs = require('fs');
fs.mkdir('new_folder', err => {
   if(err) throw err; // не удалось создать папку
   console.log('Папка успешно создана');
});
Если нужно создать последовательность вложенных папок (рекурсивное создание), то можно вторым параметром передать значение "recursive" равное "true":
let fs = require('fs');
fs.mkdir('new_folder/sub_folder', { recursive: true }, err => {
   if(err) throw err; // не удалось создать папки
   console.log('Все папки успешно созданы');
});
Метод "mkdir" работает асинхронно. Для синхронного выполнения используйте метод "mkdirSync".

Удаление папки

С помощью метода "rmdir" можно удалить папку. Первым параметром в неё передаётся абсолютный или относительный путь к удаляемой папке. Вторым параметром - стрелочная функция для обработки ошибки:
let fs = require('fs');
fs.rmdir('new_folder/sub_folder', err => {
   if(err) throw err; // не удалось удалить папку
   console.log('Папка успешно удалена');
});
Метод "rmdir" работает асинхронно. Для синхронного выполнения используйте метод "rmdirSync".
Выполнение метода "rmdir" вызовет ошибку, если удаляемая папка не является пустой. Для удаления папки с вложенными файлами через "rmdir" необходимо скомбинировать чтение содержимого папки и удаление внутри рекурсивной функции. О рекурсивном обходе всех файлов читайте в статье "Рекурсивный обход файлов в NodeJS".

Чтение папки

Для чтения содержимого папки используется метод "readdir". Первым параметром в него передаётся абсолютный или относительный путь к папке, содержимое которой нужно прочитать. Вторым параметром - стрелочная функция для обработки ошибки и получения имён файлов:
let fs = require('fs');
fs.readdir('folder/sub_folder', (err, files) => {
   if(err) throw err; // не прочитать содержимое папки
   console.log('В папке находятся файлы:' + files);
});
Содержимое переменной "files" представляет собой массив из имён файлов и папок.
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, курсы создания сайтов, вебинары по созданию, курсы разработки сайтов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Cмотрите другие статьи:
Была ли статья полезной?
Была ли эта статья полезна? Есть вопрос?
хостинг для сайтов
Закажите недорогой хостинг Заказать

всего от 290 руб