Работа с файлами в Node.js — это одна из основных задач, которые могут понадобиться разработчикам. Node.js предоставляет мощные средства для работы с файловой системой через встроенный модуль fs (файловая система). В этом ответе мы рассмотрим, как использовать этот модуль для чтения, записи и управления файлами.
Сначала давайте подключим модуль fs:
const fs = require('fs');
Node.js поддерживает как синхронные, так и асинхронные операции с файлами. Рассмотрим основные методы работы с файлами.
Чтение файлов
Для чтения файлов мы можем использовать метод fs.readFile для асинхронного чтения и fs.readFileSync для синхронного.
Асинхронное чтение
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) {
console.error('Ошибка чтения файла:', err);
return;
}
console.log('Содержимое файла:', data);
});
Синхронное чтение
try {
const data = fs.readFileSync('example.txt', 'utf8');
console.log('Содержимое файла:', data);
} catch (err) {
console.error('Ошибка чтения файла:', err);
}
Запись в файлы
Для записи данных в файл используйте методы fs.writeFile и fs.writeFileSync.
Асинхронная запись
fs.writeFile('example.txt', 'Новый текст файла', (err) => {
if (err) {
console.error('Ошибка записи файла:', err);
return;
}
console.log('Файл успешно записан');
});
Синхронная запись
try {
fs.writeFileSync('example.txt', 'Новый текст файла');
console.log('Файл успешно записан');
} catch (err) {
console.error('Ошибка записи файла:', err);
}
Добавление данных в файл
Для добавления данных в существующий файл используйте метод fs.appendFile:
fs.appendFile('example.txt', 'Добавленный текст', (err) => {
if (err) {
console.error('Ошибка добавления в файл:', err);
return;
}
console.log('Данные успешно добавлены');
});
Удаление файлов
Чтобы удалить файл, используйте метод fs.unlink:
fs.unlink('example.txt', (err) => {
if (err) {
console.error('Ошибка удаления файла:', err);
return;
}
console.log('Файл успешно удален');
});
Создание директории
Для создания новой директории используйте метод fs.mkdir:
fs.mkdir('new_directory', (err) => {
if (err) {
console.error('Ошибка создания директории:', err);
return;
}
console.log('Директория успешно создана');
});
Чтение содержимого директории
Чтобы прочитать содержимое директории, используйте метод fs.readdir:
fs.readdir('.', (err, files) => {
if (err) {
console.error('Ошибка чтения директории:', err);
return;
}
console.log('Содержимое директории:', files);
});
Заключение
Работа с файлами в Node.js — это мощный инструмент, который позволяет создавать, читать, изменять и удалять файлы и директории. Используя методы модуля fs, вы можете эффективно управлять данными в вашем приложении. Не забудьте обрабатывать ошибки, чтобы ваше приложение работало надежно.
Надеюсь, этот обзор поможет вам начать работу с файлами в Node.js!