Menu
CoddyTech

Lendo um arquivo

Parte da seção Fundamentos de Node.js do Journey de Node.js da Coddy. Lição 10 de 24.

Cada execução começa com as mesmas três notas, porque elas ficam apenas na memória.

readFileSync(path, 'utf8') de node:fs lê um arquivo como uma string. Um arquivo de notas contém JSON, um formato de texto para dados escritos como arrays e objetos JavaScript, e JSON.parse transforma esse texto em um array. Ler um arquivo que não existe gera um erro ENOENT, então verifique primeiro com existsSync.

import { existsSync, readFileSync } from 'node:fs';

const scores = existsSync('scores.json')
    ? JSON.parse(readFileSync('scores.json', 'utf8'))
    : [];
console.log(scores.length);

Sem 'utf8', você recebe um Buffer, os bytes brutos do arquivo, em vez de uma string.

challenge icon

Desafio

Fácil
  • store.js carrega suas notas de notes.json em vez de usar a lista fixa.
  • Sem notes.json, o armazenamento começa vazio e list exibe No notes yet.

Execute node notes.js list. Em seguida, execute node notes.js clear, que exclui o arquivo, e execute list novamente. Redefinir arquivos restaura o arquivo.

Experimente você mesmo

// Carregue as notas de notes.json em vez desta lista.
const store = {
    notes: ['Buy milk', 'Call Ada', 'Water the plants'],
    add(text) {
        this.notes.push(text);
        return this.notes.length;
    },
};

export default store;
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos de Node.js