Desafío: Operaciones del Sistema de Archivos
Objetivo
Dominar la automatización de la gestión de tareas. El objetivo es desarrollar una aplicación que recopile tareas de una fuente, extraiga su contenido e integre dichas tareas en otro archivo. La solución también debe gestionar cualquier posible error durante el proceso.
Tarea
Imagina que tienes dos archivos: tasks.txt, que contiene una lista de tareas existentes, y new-task.txt, que incluye una sola tarea que debe añadirse al archivo tasks.txt.
Sigue estos pasos para completar el desafío y crear la solución en tu equipo:
- Preparar el entorno de trabajo: Comienza creando una nueva carpeta en tu equipo y ábrela con tu editor de código preferido.
- Configurar tareas: Crea el archivo
tasks.txty complétalo con las siguientes tareas o utiliza el archivo proporcionado tasks.txt:Teach a goldfish 🐠 to play chess ♟️;Build a sandcastle 🏰 in your living room 🛋️;Create a song 🎶 using only sounds from nature 🌿.
- Definir nueva tarea: Crea el archivo
new-task.txte inserta la siguiente tarea o utiliza el archivo proporcionado new-task.txt:Invent a new dance move and perform it in public. 💃🕺.
- Script principal: Crea el archivo
app.js, que será el núcleo de la aplicación.- Importar módulo fs: Comienza importando el módulo
fspara habilitar la gestión de archivos en la aplicación; - Leer contenido: Utiliza la función
readFiledel módulofspara extraer el contenido del archivonew-task.txt. Asegúrate de implementar.then()y.catch()para gestionar tanto los escenarios de éxito como de error; - Añadir contenido: Dentro del bloque
.then(), una vez leído el contenido correctamente, utiliza la funciónappendFilepara añadir el contenido al archivotasks.txt. No olvides añadir un salto de línea (\n) después del contenido.
- Importar módulo fs: Comienza importando el módulo
- Ejecutar: Guarda el archivo
app.jsy ejecútalo usando Node.js en la terminal con el comandonode app.
Si prefieres usar el editor de código a continuación, ten en cuenta que no reconoce tus archivos y no mostrará tu progreso.
123456789const fs = require("fs").___; fs.___("new-task.txt", "utf-8") .then(___ => { return fs.___("tasks.txt", ___ + ___); }) .___((error) => { console.log("Error:", error); });
- Importar el módulo
fspara trabajar con archivos. - Utilizar
fs.readFile("new-task.txt", "utf-8")para leer el contenido del archivonew-task.txt. - Encadenar un
.then()para manejar la lectura exitosa del contenido del archivo. - En el bloque
.then(), proporcionar una función de devolución de llamada que reciba el contenido como argumento. - Dentro del bloque
.then()de la promesareadFile, retornar el resultado de usarfs.appendFilepara agregar contenido al archivotasks.txt. - Recordar incluir un carácter de nueva línea
\npara separar el contenido agregado. - Después del bloque
.then()de la operaciónappendFile, encadenar un bloque.catch()para manejar cualquier error que pueda ocurrir en toda la cadena. - En el bloque
.catch(), proporcionar una función de devolución de llamada que reciba un parámetro de error. - Dentro del bloque
.catch(), registrar un mensaje de error junto con el error recibido. - Ejecutar el script usando Node.js escribiendo
node app.
const fs = require("fs").promises;
fs.readFile("new-task.txt", "utf-8")
.then((content) => {
return fs.appendFile("tasks.txt", content + "\n");
})
.catch((error) => {
console.log("Error occurred:", error);
});
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Can you explain how the `.then()` and `.catch()` methods work in this context?
What should I do if the `tasks.txt` or `new-task.txt` file does not exist?
How can I verify that the new task was successfully added to `tasks.txt`?
Awesome!
Completion rate improved to 2.56
Desafío: Operaciones del Sistema de Archivos
Desliza para mostrar el menú
Objetivo
Dominar la automatización de la gestión de tareas. El objetivo es desarrollar una aplicación que recopile tareas de una fuente, extraiga su contenido e integre dichas tareas en otro archivo. La solución también debe gestionar cualquier posible error durante el proceso.
Tarea
Imagina que tienes dos archivos: tasks.txt, que contiene una lista de tareas existentes, y new-task.txt, que incluye una sola tarea que debe añadirse al archivo tasks.txt.
Sigue estos pasos para completar el desafío y crear la solución en tu equipo:
- Preparar el entorno de trabajo: Comienza creando una nueva carpeta en tu equipo y ábrela con tu editor de código preferido.
- Configurar tareas: Crea el archivo
tasks.txty complétalo con las siguientes tareas o utiliza el archivo proporcionado tasks.txt:Teach a goldfish 🐠 to play chess ♟️;Build a sandcastle 🏰 in your living room 🛋️;Create a song 🎶 using only sounds from nature 🌿.
- Definir nueva tarea: Crea el archivo
new-task.txte inserta la siguiente tarea o utiliza el archivo proporcionado new-task.txt:Invent a new dance move and perform it in public. 💃🕺.
- Script principal: Crea el archivo
app.js, que será el núcleo de la aplicación.- Importar módulo fs: Comienza importando el módulo
fspara habilitar la gestión de archivos en la aplicación; - Leer contenido: Utiliza la función
readFiledel módulofspara extraer el contenido del archivonew-task.txt. Asegúrate de implementar.then()y.catch()para gestionar tanto los escenarios de éxito como de error; - Añadir contenido: Dentro del bloque
.then(), una vez leído el contenido correctamente, utiliza la funciónappendFilepara añadir el contenido al archivotasks.txt. No olvides añadir un salto de línea (\n) después del contenido.
- Importar módulo fs: Comienza importando el módulo
- Ejecutar: Guarda el archivo
app.jsy ejecútalo usando Node.js en la terminal con el comandonode app.
Si prefieres usar el editor de código a continuación, ten en cuenta que no reconoce tus archivos y no mostrará tu progreso.
123456789const fs = require("fs").___; fs.___("new-task.txt", "utf-8") .then(___ => { return fs.___("tasks.txt", ___ + ___); }) .___((error) => { console.log("Error:", error); });
- Importar el módulo
fspara trabajar con archivos. - Utilizar
fs.readFile("new-task.txt", "utf-8")para leer el contenido del archivonew-task.txt. - Encadenar un
.then()para manejar la lectura exitosa del contenido del archivo. - En el bloque
.then(), proporcionar una función de devolución de llamada que reciba el contenido como argumento. - Dentro del bloque
.then()de la promesareadFile, retornar el resultado de usarfs.appendFilepara agregar contenido al archivotasks.txt. - Recordar incluir un carácter de nueva línea
\npara separar el contenido agregado. - Después del bloque
.then()de la operaciónappendFile, encadenar un bloque.catch()para manejar cualquier error que pueda ocurrir en toda la cadena. - En el bloque
.catch(), proporcionar una función de devolución de llamada que reciba un parámetro de error. - Dentro del bloque
.catch(), registrar un mensaje de error junto con el error recibido. - Ejecutar el script usando Node.js escribiendo
node app.
const fs = require("fs").promises;
fs.readFile("new-task.txt", "utf-8")
.then((content) => {
return fs.appendFile("tasks.txt", content + "\n");
})
.catch((error) => {
console.log("Error occurred:", error);
});
¡Gracias por tus comentarios!