Raúl Adolfo Sánchez Rodríguez
🚩¿Cuándo usar fs.writeFileSync() y fs.writeFile() ?
El módulo fs de Node.js te permite interactuar con el sistema de archivos de tu computadora directamente desde tu código. Aprenderás a ejecutar un CRUD completo: crear, leer, actualizar y eliminar archivos usando funciones nativas, sin instalar dependencias externas.
Esto es útil cuando construyes scripts que generan logs, guardan transcripciones, exportan datos o manipulan recursos locales antes de enviarlos a otro servicio.
¿Qué es el módulo fs y cómo se importa en Node.js?
El módulo file system viene incluido en Node.js, así que no necesitas instalarlo. Solo lo importas con require y queda listo para usar [0:38].
js const fs = require('fs'); const fileName = 'example.txt';
La constante fileName guarda el nombre del archivo que vas a manipular en todo el script. Mantenerlo en una variable evita que repitas el string en cada operación y facilita cambiarlo después.
¿Qué significa CRUD en el contexto de archivos? Es el conjunto de cuatro operaciones básicas: Create (crear), Read (leer), Update (actualizar) y Delete (eliminar). El módulo fs te da una función para cada una.
¿Cómo creo y leo un archivo con writeFileSync y readFileSync?
Para crear un archivo usas fs.writeFileSync, que recibe el nombre del archivo y el contenido que quieres escribir [1:38]. Si el archivo no existe, lo crea; si ya existe, lo sobrescribe.
js // Crear fs.writeFileSync(fileName, 'Hola, este es un archivo de ejemplo'); console.log('Archivo creado correctamente');
Al ejecutar node fs.js en la terminal, verás el archivo example.txt aparecer en la raíz de tu proyecto con el contenido que definiste.
Para leerlo, usas fs.readFileSync y le pasas dos argumentos: el nombre del archivo y la codificación, que por estándar es UTF-8 [3:00].
js // Leer const content = fs.readFileSync(fileName, 'utf-8'); console.log('File content:', content);
Un detalle importante: dentro de console.log, separa los argumentos con coma. Si concatenas mal o te falta la coma, Node te lanzará un error indicando la línea exacta. Y como dice el instructor, los errores son tus amigos: te dicen qué revisar.
¿Cómo actualizo y elimino archivos sin perder el contenido previo?
Para agregar contenido sin borrar lo que ya existe, usa fs.appendFileSync. Esta función abre el archivo y añade texto al final, ideal cuando quieres conservar líneas anteriores.
js // Actualizar fs.appendFileSync(fileName, '\nEsta es una nueva línea\n'); console.log('Archivo actualizado correctamente');
El \n agrega un salto de línea para que el contenido nuevo no quede pegado al anterior. Sin ese salto, todo se imprime en una sola línea y se vuelve ilegible.
¿Por qué no se conserva el contenido entre ejecuciones? Porque el script corre de arriba hacia abajo cada vez.
writeFileSyncreinicia el archivo en cada ejecución y luegoappendFileSyncagrega la línea. Si quieres conservar estados, comenta o separa las operaciones.
¿Cómo elimino un archivo con unlinkSync?
La función fs.unlinkSync recibe el nombre del archivo y lo borra del sistema [6:30].
js // Eliminar fs.unlinkSync(fileName); console.log('Archivo eliminado correctamente');
Al ejecutar el script completo, verás cómo el archivo pasa por cada estado: se crea, se lee, se actualiza y finalmente desaparece de tu editor.
¿Qué diferencia hay entre las versiones Sync y asíncronas?
Las funciones con sufijo Sync bloquean la ejecución hasta que terminan. Son más simples para scripts pequeños y ejemplos didácticos. En proyectos reales con alta concurrencia, conviene usar las versiones asíncronas con callbacks o promesas para no bloquear el event loop.
Conceptos y funciones clave que aparecen en la práctica
Con estas funciones tienes la base para construir lógicas más avanzadas, como guardar transcripciones de audio, generar reportes automáticos o manipular carpetas completas. ¿Qué archivo te gustaría automatizar primero con fs? Cuéntame en los comentarios.
Raúl Adolfo Sánchez Rodríguez
🚩¿Cuándo usar fs.writeFileSync() y fs.writeFile() ?
Raúl Adolfo Sánchez Rodríguez
Métodos revisados en esta clase:
Recuerda lo siguiente:
Matias Ezequiel Rivero
usos reales del módulo nativo fs de Node.js:
.json, .env personalizados).fs sigue siendo clave en Node.js para tareas de bajo nivel, automatización y tooling; mal usado en apps grandes puede volverse un cuello de botella si no se combina con streams y async.
Julio Cardenas
Camilo Venegas
Jeffry Almonte dely
Saludos, decirle que al usar Sync, signgifa que es sincrona y puede traernos problemas si en el momento nuestra aplicación está realizando otras acciones o ejecutando otros hilos, es siempre recomendado que usen el fs.readFile.... Así tendrán que pasarle un callback y capturar errores y hacer que nuestra funcion o archivo sea asincrona.