Модуль файловой системы узла fs позволяет нам играть с файлами в операционной системе.

Итак, что это может мне помочь? любой тип CRUD-операции (создание, чтение, обновление и удаление) в системе. Создание файлов журналов, сохранение своевременных данных о погоде из API через заданный интервал времени и многое другое.

После завершения черновика Create part (CRUD). Я узнал, что этот пост будет длинным. Мой первоначальный подход состоял в том, чтобы объяснить все 4 операции CRUD, но я подробно объяснил каждый синтаксис кода, чтобы объяснить его как можно более значимым.

Это, несомненно, поможет вам понять и построить основы Node.js.

Итак, теперь мне нужно разбить Node.js: Understanding File System Module на 4 части. Это первая часть - Create. Я обновлю здесь ссылки, как только напишу их.

Давайте начнем. 😎

⚠️ ВАЖНО: На этом этапе я предполагаю, что у вас установлен Node.js, и я ожидаю, что вы будете кодировать что поможет вам лучше понять. Вы можете установить, перейдя на официальный сайт Node.js.

💡 СОВЕТ: В этом руководстве я буду использовать редактор кода Visual Studio и также рекомендую.

Шаг 1. Загрузка модуля файловой системы

Чтобы использовать модуль файловой системы, нам сначала нужно импортировать его в наш файл. Мы делаем это, добавляя приведенный ниже код в наш новый файл server.js.

var filesystem = require("fs");

👊 Давайте разберем этот код:

  1. fs - это наш модуль файловой системы, который поставляется предварительно упакованным при установке node.
  2. Мы используем функцию require() для загрузки модулей в наш server.js файл. Примечание. require() является частью node.js, а не JavaScript.
  3. Мы создаем переменную filesystem (вы можете назвать ее как угодно, покемон тоже) и назначаем ссылку загруженному модулю fs. Таким образом, мы можем использовать его в нашем коде.

⚡ ИЗУЧИТЬ: filesystem ссылается на модуль fs, но не содержит в нем полный fs модуль (или его копию). Такой способ работы называется передачей по ссылке, только примитивные типы данных могут передаваться по значению.

Теперь у нас есть все инструменты модуля файловой системы, доступные через filesystem. Перейдите в новую строку, введите filesystem. (с.), И вы увидите все доступные методы, которые мы можем использовать.

Шаг 2: Создание нашего файла с покемонами

Давайте выполним нашу первую операцию CRUD - Create. Мы создадим текстовый файл, добавим в него информацию и сохраним. На самом деле мы ничего не будем делать, кроме написания кода, все будет делать автоматически нашим сервером 😉.

Добавьте следующие строки кода в следующую строку сразу после того места, где мы загрузили модуль fs. Не забудьте нажать Сохранить (Ctrl + S).

filesystem.appendFileSync(
"favourite-pokemon.txt",
"My favourite Pokemon is Pikachu 😍"
);

👊 Давайте разберем этот код:

  1. appendFileSync() - один из методов в модуле файловой системы, который используется для добавления указанного содержимого в файл. Что делать, если у нас нет файла? Не волнуйтесь, он будет создан.
  2. appendFileSync(path, data, option) принимает 3 аргумента.
  3. В path я мог бы использовать что-то вроде этого ./favourite-pokemon.txt, и это все равно работало бы. Почему? потому что он ищет имя файла favourite-pokemon.txt в текущем каталоге, или я должен сказать, где находится ваш server.js файл. Если он не найден, он просто создаст его.
  4. В data мы можем поместить строку любого типа. Только не забудьте заключить его в "" кавычки.
  5. option не является обязательным, поэтому я ничего не добавил в свой третий аргумент. В основном он используется для указания encoding, mode и flag. Для простоты я не буду здесь объяснять, но вы всегда можете узнать, как работают необязательные параметры.

В нашем модуле файловой системы есть и другие методы для создания файлов. appendFile(), open() и writeFile().

ВОПРОС: В чем разница между appendFileSync() и appendFile()? Поскольку оба используются для добавления данных в файл, какова важность синхронного или асинхронного способа добавления данных?

Расскажите в комментариях, или я объясню в следующем посте. Будьте на связи.

Шаг 3: Запуск нашего сервера

У нас есть все необходимое, мы загрузили наш модуль файловой системы fs и создали для него ссылочную переменную filesystem, затем мы сказали нашему серверу создать файл favourite-pokemon.txt и заполнить его моим любимым именем покемона, используя метод appendFileSync().

Теперь пришло время Node.js сделать то, что ему говорят. Давайте запустим наш сервер.

Нажмите Ctrl + ` (обратная кавычка), чтобы открыть терминал в VS Code. Убедитесь, что вы находитесь в каталоге, в котором находится ваш server.js файл. Затем выполните приведенную ниже команду, нажав Enter.

node server.js

В левой части редактора, который называется Explorer, вы увидите новый файл, созданный favourite-pokemon.txt (нажмите _41 _ + _ 42 _ + _ 43_, чтобы открыть проводник). Щелкните этот файл, и вы увидите, что наш сервер успешно создал файл с моим любимым покемоном. Ура! 🎉

Поскольку мы не сказали нашему серверу продолжать работу, узел выполнит код и завершит его.

Знаете что-нибудь интересное и полезное?

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

Примечание команды разработчиков Plain English

Вы знали, что у нас четыре публикации? Проявите немного любви, предложив им следующее: JavaScript на простом английском, AI на простом английском, UX на простом английском , Python на простом английском - спасибо и продолжайте учиться!

Кроме того, мы всегда заинтересованы в продвижении хорошего контента. Если у вас есть статья, которую вы хотели бы отправить в какую-либо из наших публикаций, отправьте электронное письмо по адресу [email protected] с вашим именем пользователя Medium и тем, о чем вы хотите написать, и мы вернуться к вам!