Menu
CoddyTech

Leer un archivo

Parte de la sección Conceptos básicos de Node.js del Journey de Node.js de Coddy. Lección 10 de 24.

Cada ejecución comienza con las mismas tres notas, porque solo existen en la memoria.

readFileSync(path, 'utf8') de node:fs lee un archivo como una cadena. Un archivo de notas contiene JSON, un formato de texto para datos escritos como matrices y objetos de JavaScript, y JSON.parse convierte ese texto en una matriz. Leer un archivo que no existe genera un error ENOENT, así que comprueba primero con existsSync.

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

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

Sin 'utf8', obtienes un Buffer, los bytes sin procesar del archivo, en lugar de una cadena.

challenge icon

Desafío

Fácil
  • store.js carga sus notas desde notes.json en lugar de usar la lista fija.
  • Si no hay notes.json, el almacén empieza vacío y list imprime No notes yet.

Ejecuta node notes.js list. Después, ejecuta node notes.js clear, que elimina el archivo, y vuelve a ejecutar list. Restablecer los archivos devuelve el archivo.

Pruébalo tú mismo

// Carga las notas desde notes.json en lugar de esta 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 iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Conceptos básicos de Node.js