Você está aqui: Node.js ::: Dicas & Truques ::: Arquivos e Diretórios |
||
Como escrever em arquivos de forma síncrona e assíncrona usando as funções writeFile() e writeFileSync() do módulo File System do Node.jsQuantidade de visualizações: 2991 vezes |
||
As operações de escrever ou gravar dados em arquivos estão entre as tarefas mais frequentes que realizamos em nossas aplicações. Gravar ou escrever dados em arquivos é também conhecido como persistir os dados, ou realizar a persistência dos dados. Note que aqui estamos falando de escrever ou gravar manualmente em um arquivo. Em outras seções do site nós abordamos a gravação e leitura de dados a partir de um banco de dados, como MongoDB e MySQL. A primeira função que veremos é writeFileSync(), que permite a escrita ou gravação em um arquivo de forma síncrona, ou seja, ela bloqueia o restante do código até que a gravação esteja completa. Veja um exemplo no qual gravamos um pequeno trecho de texto em um arquivo chamado notas.txt:
Execute este código e, se tudo correr bem, você verá a mensagem "A escrita foi realizada com sucesso." ser exibida na janela de terminal. Importante: Se o arquivo não existir, a função fs.writeFileSync() o criará. Se o arquivo já existir e possuir algum conteúdo, seu conteúdo será sobresposto. O mesmo vale para a função assíncrona fs.writeFile(). Vamos ver agora um exemplo usando a função fs.writeFile(). Esta função é assíncrona. Por isso, deveremos fornecer a ela uma função de callback. Veja o código para o exemplo:
Fique atento ao fato de que funções assíncronas são executadas em paralelo com o restante do código de sua aplicação. Dessa forma, tenha muito cuidado para que outra parte do código não esteja realizando a leitura do conteúdo do arquivo enquanto a função writeFile() estiver efetuado a gravação. Em códigos com funções assíncronas nunca sabemos ao certo em qual ordem elas serão executadas. |
||
![]() |
||
Veja mais Dicas e truques de Node.js |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |