Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Node.js ::: Dicas & Truques ::: Arquivos e Diretórios

Como usar as funções access() e accessSync() do módulo File System do Node.js para testar a existência de um arquivo ou diretório

Quantidade de visualizações: 2140 vezes
Em várias situações nós precisamos verificar se um arquivo ou diretório existe antes de procedermos com alguma ação. Entre as várias funções existentes nos módulos do Node.js, as funções access() e accessSync() do módulo File System são as mais comumente usadas para este propósito.

Vamos começar com um exemplo no qual usamos a função accessSync() para testar se um determinado arquivo existe:

var fs = require("fs"); // importamos o módulo File System
      
// vamos verificar se um determinado arquivo existe
var arquivo = "C:\\estudos_dart\\laco_for.dart";

try{
  // fs.constants.F_OK verifica se o arquivo existe  
  fs.accessSync(arquivo, fs.constants.F_OK);


Ao executarmos este código nós teremos o seguinte resultado:

O arquivo C:\estudos_dart\laco_for.dart foi encontrado.

Veja que a forma que usamos fs.accessSync neste exemplo provocará um erro do tipo "Error: ENOENT: no such file or directory, access" caso o arquivo ou diretório não existir. Por isso coloquei um bloco try...catch. A constante fs.constants.F_OK reforça que estamos apenas testando a existência do arquivo ou diretório, e não suas permissões.

Uma outra observação é que a função accessSync() bloqueia as demais instruções do código. Isso é importante quando queremos verificar a existência do arquivo ou diretório e efetuar uma operação do leitura ou gravação já de imediato.

A função access(), por sua vez, é assíncrona, ou seja, enquanto ela está verificando a existência do arquivo ou diretório, outras instruções do código estarão sendo executadas, o que pode acarretar situações de bloqueio ou resultados indesejados. Fique atento a isso ao planejar suas aplicações Node.js.

Veja um exemplo do uso da função access() para verificar se um diretório existe no sistema:

var fs = require("fs"); // importamos o módulo File System
      
// vamos verificar se um determinado diretório existe
var diretorio = "C:\\estudos_java";

// atenção! Estamos usando código assíncrono aqui
fs.access(diretorio, fs.constants.F_OK, (erro) => {
  if(!erro){
    console.log('O diretório ' + diretorio + ' existe.');  


Ao executar este código nós teremos um resultado parecido com:

O diretório C:\estudos_java existe.

Observe que, como é costume com funções assíncronas, nós fornecemos uma função de callback para a função fs.access(). Dessa forma, enquanto esta parte do código está sendo executada, outras instruções externas à chamada da função estarão também realizando mais operações no programa.

Por fim, tenha em mente que as funções access() e accessSync() são adequadas para verificar a existência e permissões de arquivos e diretórios. Se o objetivo for testar a existência do arquivo e depois ler a partir dele ou efetuar escrita, então as funções fs.open(), fs.readFile() e fs.writeFile() são mais adequadas, já que elas retornam um erro se o arquivo ou diretório não existir.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Node.js

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 31 usuários muito felizes estudando em nosso site.