File system

Clase 12 de 31Curso de Fundamentos de Node.js

Resumen

¿Qué es el módulo FS en Node.js?

El módulo FS (File System) en Node.js es una herramienta poderosa y esencial que te permitirá acceder a archivos en tu sistema operativo. Con FS, podrás leer, escribir, modificar y renombrar archivos, entre muchas otras capacidades. Este módulo es crucial cuando trabajas con cualquier aplicación que necesite interacción con archivos, como bases de datos o almacenamiento de archivos.

¿Cómo cargar el módulo FS?

Cargar el módulo FS dentro de Node.js es bastante sencillo, ya que está incluido por defecto en el entorno de ejecución. Solamente necesitas requerir el módulo usando el siguiente método:

const fs = require('fs');

Con esta línea de código, el módulo queda disponible para ser utilizado en tus manipulaciones de archivos.

¿Cómo leer archivos con FS?

Leer archivos es una de las operaciones más comunes que puedes realizar con FS. A continuación, te mostramos un ejemplo sencillo de cómo crear una función para leer un archivo de texto:

Función para leer archivos

function leerArchivo(ruta, callback) {
    fs.readFile(ruta, (error, datos) => {
        if (error) {
            console.error("Error al leer el archivo:", error);
        } else {
            callback(datos.toString());
        }
    });
}

Uso de la función

Para utilizar la función, simplemente debes llamar a leerArchivo con la ruta del archivo y una función callback:

leerArchivo('directorio/archivo.txt', (contenido) => {
    console.log(contenido);
});

¿Cómo escribir en archivos con FS?

Escribir en archivos es igualmente sencillo y se puede lograr con la función writeFile del módulo FS.

Función para escribir archivos

function escribirArchivo(ruta, contenido, callback) {
    fs.writeFile(ruta, contenido, (error) => {
        if (error) {
            console.error("No se pudo escribir en el archivo:", error);
        } else {
            console.log("Archivo escrito correctamente.");
            if (callback) callback();
        }
    });
}

Uso de la función

escribirArchivo('directorio/archivoNuevo.txt', 'Este es un nuevo archivo', () => {
    console.log('Escritura completada');
});

¿Cómo borrar archivos con FS?

Si necesitas eliminar un archivo, el método unlink de FS es tu aliado.

Función para borrar archivos

function borrarArchivo(ruta, callback) {
    fs.unlink(ruta, (error) => {
        if (error) {
            console.error("Error al borrar el archivo:", error);
        } else {
            console.log("Archivo borrado exitosamente.");
            if (callback) callback();
        }
    });
}

Uso de la función

borrarArchivo('directorio/archivoParaBorrar.txt', () => {
    console.log('Borrado confirmado');
});

Recomendaciones generales al utilizar FS

  1. Utiliza funciones asincrónicas: Esto asegura un mejor rendimiento, especialmente en servidores web, al evitar el bloqueo del hilo principal.
  2. Manejo de errores: Siempre maneja errores de manera adecuada para prevenir caídas del sistema.
  3. Permisos de archivos: Asegúrate de que los permisos de archivos y directorios estén configurados de manera adecuada para evitar problemas de lectura o escritura.
  4. Ampliación de capacidades: Explora más funciones del módulo FS para operaciones avanzadas, como cambio de nombre, verificación de estadísticas de archivos, etc.

Dominar el manejo de archivos con Node.js no solo hace que tu código sea más eficiente, sino que también te prepara para desarrollar aplicaciones más sofisticadas. ¡Sigue practicando y no dudes en explorar la documentación oficial de Node.js para descubrir todo lo que puedes hacer con FS!