Como ler e escrever um arquivo JSON usando Node.js?
Node.js é um ambiente de execução de plataforma cruzada e código aberto para a execução de código JavaScript fora do navegador. É amplamente utilizado no desenvolvimento de APIs e microsserviços de pequenas a grandes empresas.
JSON ou JavaScript Object Notation é um formato leve de intercâmbio de dados baseado em texto. Assim como o XML, é uma das formas de troca de informações entre aplicativos. Este formato de dados é amplamente usado por aplicativos da web / APIs para se comunicarem entre si.
Lendo um arquivo JSON:
- Método 1: Usando o método require: O método mais simples para ler um arquivo JSON é solicitá-lo em um arquivo node.js usando o
require()
método.Sintaxe:
dados const = require ('caminho / para / arquivo / nome do arquivo');
Exemplo: Crie um arquivo users.json no mesmo diretório onde o arquivo index.js está presente. Adicione os dados a seguir ao arquivo json.
arquivo users.json:
[
{
"name"
:
"John"
,
"age"
: 21,
"language"
: [
"JavaScript"
,
"PHP"
,
"Python"
]
},
{
"name"
:
"Smith"
,
"age"
: 25,
"language"
: [
"PHP"
,
"Go"
,
"JavaScript"
]
}
]
Agora, adicione o seguinte código ao seu
index.js
arquivo.arquivo index.js:
// Requiring users file
const users = require(
"./users"
);
console.log(users);
Agora, execute o arquivo usando o comando:
node index.js
Saída:
- Método 2: usando o módulo fs: também podemos usar o módulo node.js fs para ler um arquivo. O
fs
módulo retorna um conteúdo de arquivo em formato de string, portanto, precisamos convertê-lo para o formato JSON usando o método embutido JSON.parse() .
Adicione o seguinte código ao seuindex.js
arquivo:
arquivo index.js:const fs = require(
"fs"
);
// Read users.json file
fs.readFile(
"users.json"
,
function
(err, data) {
// Check for errors
if
(err)
throw
err;
// Converting to JSON
const users = JSON.parse(data);
console.log(users);
// Print users
});
Agora execute o arquivo novamente e você verá uma saída como esta:
Saída:
Gravando em um arquivo JSON: podemos gravar dados em um arquivo JSON usando o módulo node.js fs . Podemos usar o método writeFile para escrever dados em um arquivo.
Sintaxe:
fs.writeFile("filename", data, callback);
Exemplo: vamos adicionar um novo usuário ao arquivo JSON existente, criado no exemplo anterior. Esta tarefa será concluída em três etapas:
- Leia o arquivo usando um dos métodos acima.
- Adicione os dados usando o
.push()
método. - Grave os novos dados no arquivo usando o
JSON.stringify()
método para converter os dados em string.
const fs = require("fs");
// STEP 1: Reading JSON file
const users = require("./users");
// Defining new user
let user = {
name: "New User",
age: 30,
language: ["PHP", "Go", "JavaScript"]
};
// STEP 2: Adding new data to users object
users.push(user);
// STEP 3: Writing to a file
fs.writeFile("users.json", JSON.stringify(users), err => {
// Checking for errors
if (err) throw err;
console.log("Done writing"); // Success
});
Execute o arquivo novamente e você verá uma mensagem no console:
Agora verifique seu arquivo users.json, ele terá a seguinte aparência:
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva