fs — это один из основных модулей Node JS, предоставляющий функции для взаимодействия с физической файловой системой. Полезно выполнять все операции файлового ввода-вывода синхронно и асинхронно.

Цель этой статьи — показать, как работать с файловой системой и выполнять операции с файлами. Многие методы модуля fs имеют два варианта: синхронный и асинхронный. Синхронные методы заканчиваются на *Sync, как, например, readFileSync, это синхронный способ чтения файла. Принимая во внимание, что асинхронным методом чтения файла является readFile. Синхронные методы могут использоваться для выполнения файловых операций, но процесс Node.js будет заблокирован до завершения ввода-вывода. Это означает, что Node не сможет выполнять какой-либо другой код, он не будет принимать никаких подключений, он не будет запускать никаких обратных вызовов или событий, он будет только ждать, пока не будет выполнена операция ввода-вывода.

Теперь давайте выполним следующие операции, используя методы, предоставляемые модулем fs. Здесь я использую только асинхронные методы для этих задач.

  1. Создание файла
  2. Чтение файла
  3. Изменение существующего файла
  4. Просмотр файла на наличие изменений

Поскольку модуль fs уже является частью основных модулей Node, нам не нужно его устанавливать, мы можем напрямую включить его, используя следующий фрагмент кода.

const fs=require('fs')

Создание файла

Вышеприведенный код создает новый файл с указанным именем и записывает указанное содержимое в файл, и если есть ошибка чтения, функция обратного вызова файла может использоваться для обработки ошибок. Если файл уже существует, его содержимое стирается и перезаписывается.

Чтение файла

В этом примере программы используется функция readFile(), которая принимает путь к файлу, кодировку файла и функцию обратного вызова. Когда чтение файла завершено, вызывается функция обратного вызова, она выдает ошибку, если встречаются такие ошибки, как файл не найден, в противном случае данные успешно читаются и доступны в переменной с именем data. Обратите внимание, что в этом примере кодировка файла — «utf8».

Изменение существующего файла

Чтобы добавить данные в файл в Node.js, мы можем использовать метод appendFile() модулей fs. Вышеуказанная программа добавляет строку «Это добавленная информация» к файлу «hello.txt». Если файл не существует, создается новый файл с указанным именем. Функция обратного вызова может использоваться для обработки ошибок, она вызывается, когда новое содержимое добавляется к существующему файлу, завершено или когда произошла ошибка.

После запуска программы Node.js будет терпеливо ждать, пока «hello.txt» не будет изменен. Чтобы вызвать изменение, откройте другой терминал в том же каталоге и измените содержимое файла или переименуйте файл, тогда вывод будет выглядеть следующим образом.

Ссылки

  1. Node.js 8 правильный путь
  2. https://www.tutorialkart.com/nodejs/create-file-in-nodejs-using-node-fs-module/