Как определить предоставленный путь к файлу или каталогу в Node.js?

Kak Opredelit Predostavlennyj Put K Fajlu Ili Katalogu V Node Js



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

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

В этой статье будут проиллюстрированы подходы к определению того, является ли указанный путь файлом или каталогом, путем рассмотрения следующих методов:







Как определить предоставленный путь к файлу или каталогу в Node.js?

Существует два метода, предоставляемых « фс ” модуль а именно “ isDirectory() ' и ' isFile() », единственной целью которого является проверка того, ведет ли указанный путь к файлу или каталогу. Эти методы используются как в синхронных, так и в асинхронных сценариях с использованием « статсинк() ' и ' статистика() методы. Эти два метода показаны ниже, чтобы определить, ведет ли указанный путь к файлу или каталогу.



Метод 1. Метод «statSync()» для определения пути, ведущего к каталогу или файлу.

« статсинк() » метод, предоставленный « фс » модуль в основном используется для выполнения синхронных операций. В нашем случае этот метод сохраняет экземпляр предоставленного пути только один раз. Затем он назначает « isDirectory() ' и ' isFile() ” методы, чтобы узнать, ведет ли указанный путь к каталогу или файлу.



Давайте рассмотрим приведенный ниже фрагмент кода для практической реализации метода «statSync()»:





константа фсобж '=' требовать ( 'фс' ) ;

пусть путь к файлу '=' фсОбдж. статсинк ( '/Пользователи/kahou/Documents/readlineProj/mcu.db' ) ;

консоль. бревно ( 'Предоставлен ли путь к файлу? ' + путьФайл. isFile ( ) ) ;

путьDir '=' фсОбдж. статсинк ( '/Пользователи/kahou/Документы/readlineProj' ) ;

консоль. бревно ( 'Предоставлен ли путь к каталогу? ' + путьДир. isDirectory ( ) ) ;

Объяснение приведенного выше кода приведено ниже:

  • Сначала импортируйте « фс ” и сохраните его экземпляр в “ фсобж ' переменная.
  • Затем вызовите команду « статсинк() метод с использованием метода « фсобж » и передайте выбранный путь в скобках. Сохраните ссылку на этот путь внутри файла « путьфайл ' переменная.
  • Далее назначьте « isFile() ” метод с “ путьфайл », чтобы вернуть логическое значение, которое покажет, ведет ли указанный путь к файлу или нет.
  • После этого снова вызовите команду « статсинк() » и передать новый путь.
  • Наконец, прикрепите « isDirectory() ” со значением, возвращаемым методом “ стартсинхронизация() метод.

Теперь выполните текущий файл, используя следующую команду:



'узел <имя_файла>'

Например, мы выполнили файл «app.js»:

Вывод показывает значение « истинный ” означает, что предоставленные пути относятся к папке и файл обнаружен.

Метод 2. Метод «stat()» для определения пути, ведущего к каталогу или файлу.

Другой метод, который идеально работает в асинхронной среде, известен как « статистика() ” метод, который обеспечивается методом “ фс » модуль. Он также использует тот же самый « isFile() ' и ' isDirectory() » методы, но из-за его асинхронной природы один и тот же путь может быть передан обоим методам. Он имеет два параметра: первый — путь к хранилищу, а второй — функция обратного вызова, которая выполняет некоторые операции по предоставленному пути:

константа фсобж '=' требовать ( 'фс' ) ,
testPath '=' '/Пользователи/kahou/Документы/readlineProj'

// Используем метод stat()
фсОбдж. статистика ( testPath , ( ошибка , статОбдж ) => {
если ( ! ошибка ) {
если ( статОбдж. isFile ( ) ) {
консоль. бревно ( ' \п Да! Указанный путь ведет к файлу? ' ) ;
}
еще если ( статОбдж. isDirectory ( ) ) {
консоль. бревно ( ' \п Да! Предоставленный путь ведет к каталогу? ' ) ;
}
}
еще
бросать ошибка ;
} ) ;

Объяснение приведенного выше кода показано ниже:

  • Сначала импортируйте « фс ” и сохраните его экземпляр в “ фсобж ' переменная. Создать ' testPath ” переменная, в которой хранится путь, предоставленный тестером.
  • Теперь вызовите команду « статистика() ” и передайте метод “ testPath » в качестве первого параметра и функцию обратного вызова в качестве второго параметра.
  • Функция обратного вызова содержит « ошибка » в качестве первого параметра и « статОбдж » как второй. « ошибка » содержит ошибки, возникающие во время выполнения, а «startObj» имеет указанный путь.
  • Внутри функции используйте « если », который выполняется, если ошибка не обнаружена.
  • « вложенный, если Операторы ” используются для присвоения “ isFile() ' и ' isDirectory() ” методы с “ статОбдж ».
  • Если методы возвращают « истинный только тогда этот раздел выполняется и отображает соответствующие сообщения об успехе.

После выполнения приведенного выше скрипта терминал выглядит следующим образом:

Как вы можете видеть, указанный путь теперь обнаружен и подтверждает, что указанный путь ведет к каталогу.

Заключение

Чтобы определить, является ли предоставленный путь путем к каталогу или файлу в NodeJs, методы « isFile() ' и ' isDirectory ' используются. Пути, доступные этими методами, предоставляются параметром « статсинк() ' и ' статистика() «методы» фс Модуль NodeJs. Эти методы сохраняют предоставленные пути синхронно и асинхронно соответственно. В этом блоге объясняется процедура определения того, ведет ли указанный путь к файлу или каталогу в NodeJS.