CodeAventura
Node.js
▸El sistema de archivos▸Leer y escribir archivos con fs

Misión

// Importa fs desde node:fs/promises
// Escribe un archivo con writeFile
// Léelo con readFile
// Muestra el contenido en consola
// Ejecuta: node index.js

TerminalTema: Vintage
11 / 15Leer y escribir archivos con fs
Anterior

Leer y escribir archivos con fs

Node.js puede tocar tu disco

Esta es una de las diferencias más grandes entre JavaScript en el navegador y en Node.js. En el navegador, JavaScript no puede leer ni escribir archivos en tu ordenador (sería un agujero de seguridad enorme). Pero Node.js sí puede.

El módulo fs (file system) te da el poder de:

  • Crear archivos
  • Leer su contenido
  • Modificarlos
  • Borrarlos
  • Listar directorios

Es como darle manos a tu programa para que pueda interactuar con el mundo real.

Tres estilos, una recomendación

Node.js ofrece tres formas de trabajar con archivos:

Nosotros usaremos promesas (fs/promises). Son más limpias, más modernas y se integran mejor con async/await.

Escribir un archivo

writeFile crea el archivo si no existe. Si ya existe, sobreescribe su contenido. Recuerda esto — es importante para no perder datos por accidente.

Si quieres añadir contenido sin borrar lo anterior, usa appendFile:

Leer un archivo

El segundo parámetro "utf8" le dice a Node cómo interpretar los bytes del archivo. Sin él, obtendrías un Buffer (datos en crudo) en vez de texto legible.

El flujo completo: escribir y leer

Un patrón muy común es escribir datos y luego verificar que se guardaron correctamente:

Ejecuta esto con node index.js y después escribe cat demo.txt en la terminal. Verás que el archivo realmente existe — no es magia, tu programa creó un archivo real en el sistema.

Manejo de errores

¿Qué pasa si intentas leer un archivo que no existe? Tu programa se rompe con un error. Es buena práctica usar try/catch:

Tu desafío 🚀

  1. Importa fs desde node:fs/promises
  2. Escribe contenido en un archivo usando writeFile
  3. Lee ese mismo archivo con readFile
  4. Muestra el contenido leído en consola con console.log
  5. Ejecuta tu script con node index.js en la terminal

Leer y escribir archivos es la base de casi todo en backend: logs, configuraciones, datos, cachés. Dominar fs es dominar la interacción con el mundo real.