Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Operazioni sul File System | Creazione di Applicazioni Console con Node.js
Sviluppo Backend con Node.js ed Express.js

bookSfida: Operazioni sul File System

Obiettivo

Padroneggiare l'automazione della gestione delle attività! L'obiettivo è sviluppare un'applicazione che raccolga le attività da una fonte, estragga il loro contenuto e le integri in un altro file. La soluzione deve anche gestire eventuali errori che possono verificarsi durante il processo.

Attività

Immagina di avere due file: tasks.txt, che contiene un elenco di attività esistenti, e new-task.txt, che include una singola attività da aggiungere al file tasks.txt.

Segui questi passaggi per completare la sfida e realizzare il progetto sulla tua macchina:

  1. Prepara l'ambiente di lavoro: Inizia creando una nuova cartella sul tuo computer e aprila con il tuo editor di codice preferito.
  2. Configura le attività: Crea il file tasks.txt e inserisci le seguenti attività oppure utilizza il file fornito tasks.txt:
    • Teach a goldfish 🐠 to play chess ♟️;
    • Build a sandcastle 🏰 in your living room 🛋️;
    • Create a song 🎶 using only sounds from nature 🌿.
  3. Definisci la nuova attività: Crea il file new-task.txt e inserisci la seguente attività oppure utilizza il file fornito new-task.txt:
    • Invent a new dance move and perform it in public. 💃🕺.
  4. Script principale: Crea il file app.js, che sarà il cuore dell'applicazione.
    • Importa il modulo fs: Inizia importando il modulo fs per abilitare la gestione dei file nell'applicazione;
    • Leggi il contenuto: Utilizza la funzione readFile del modulo fs per estrarre il contenuto dal file new-task.txt. Assicurati di implementare .then() e .catch() per gestire sia i casi di successo che di errore;
    • Aggiungi il contenuto: All'interno del blocco .then(), una volta letto correttamente il contenuto, utilizza la funzione appendFile per aggiungere il contenuto al file tasks.txt. Ricorda di aggiungere un carattere di nuova riga (\n) dopo il contenuto.
  5. Esegui lo script: Salva il file app.js ed eseguilo tramite Node.js nel terminale con il comando node app.

Se preferisci utilizzare l'editor di codice qui sotto, tieni presente che non riconosce i tuoi file e non mostrerà i tuoi progressi.

123456789
const fs = require("fs").___; fs.___("new-task.txt", "utf-8") .then(___ => { return fs.___("tasks.txt", ___ + ___); }) .___((error) => { console.log("Error:", error); });
copy
  1. Importare il modulo fs per lavorare con i file.
  2. Utilizzare fs.readFile("new-task.txt", "utf-8") per leggere il contenuto dal file new-task.txt.
  3. Collegare un .then() per gestire la lettura riuscita del contenuto del file.
  4. Nel blocco .then(), fornire una funzione di callback che riceve il contenuto come argomento.
  5. All'interno del blocco .then() della promise readFile, restituire il risultato dell'utilizzo di fs.appendFile per aggiungere il contenuto al file tasks.txt.
  6. Ricordarsi di includere un carattere di nuova riga \n per separare il contenuto aggiunto.
  7. Dopo il blocco .then() dell'operazione appendFile, collegare un blocco .catch() per gestire eventuali errori che potrebbero verificarsi nell'intera catena.
  8. Nel blocco .catch(), fornire una funzione di callback che riceve un parametro di errore.
  9. All'interno del blocco .catch(), registrare un messaggio di errore insieme all'errore ricevuto.
  10. Eseguire lo script utilizzando Node.js digitando 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);
  });
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 2.56

bookSfida: Operazioni sul File System

Scorri per mostrare il menu

Obiettivo

Padroneggiare l'automazione della gestione delle attività! L'obiettivo è sviluppare un'applicazione che raccolga le attività da una fonte, estragga il loro contenuto e le integri in un altro file. La soluzione deve anche gestire eventuali errori che possono verificarsi durante il processo.

Attività

Immagina di avere due file: tasks.txt, che contiene un elenco di attività esistenti, e new-task.txt, che include una singola attività da aggiungere al file tasks.txt.

Segui questi passaggi per completare la sfida e realizzare il progetto sulla tua macchina:

  1. Prepara l'ambiente di lavoro: Inizia creando una nuova cartella sul tuo computer e aprila con il tuo editor di codice preferito.
  2. Configura le attività: Crea il file tasks.txt e inserisci le seguenti attività oppure utilizza il file fornito tasks.txt:
    • Teach a goldfish 🐠 to play chess ♟️;
    • Build a sandcastle 🏰 in your living room 🛋️;
    • Create a song 🎶 using only sounds from nature 🌿.
  3. Definisci la nuova attività: Crea il file new-task.txt e inserisci la seguente attività oppure utilizza il file fornito new-task.txt:
    • Invent a new dance move and perform it in public. 💃🕺.
  4. Script principale: Crea il file app.js, che sarà il cuore dell'applicazione.
    • Importa il modulo fs: Inizia importando il modulo fs per abilitare la gestione dei file nell'applicazione;
    • Leggi il contenuto: Utilizza la funzione readFile del modulo fs per estrarre il contenuto dal file new-task.txt. Assicurati di implementare .then() e .catch() per gestire sia i casi di successo che di errore;
    • Aggiungi il contenuto: All'interno del blocco .then(), una volta letto correttamente il contenuto, utilizza la funzione appendFile per aggiungere il contenuto al file tasks.txt. Ricorda di aggiungere un carattere di nuova riga (\n) dopo il contenuto.
  5. Esegui lo script: Salva il file app.js ed eseguilo tramite Node.js nel terminale con il comando node app.

Se preferisci utilizzare l'editor di codice qui sotto, tieni presente che non riconosce i tuoi file e non mostrerà i tuoi progressi.

123456789
const fs = require("fs").___; fs.___("new-task.txt", "utf-8") .then(___ => { return fs.___("tasks.txt", ___ + ___); }) .___((error) => { console.log("Error:", error); });
copy
  1. Importare il modulo fs per lavorare con i file.
  2. Utilizzare fs.readFile("new-task.txt", "utf-8") per leggere il contenuto dal file new-task.txt.
  3. Collegare un .then() per gestire la lettura riuscita del contenuto del file.
  4. Nel blocco .then(), fornire una funzione di callback che riceve il contenuto come argomento.
  5. All'interno del blocco .then() della promise readFile, restituire il risultato dell'utilizzo di fs.appendFile per aggiungere il contenuto al file tasks.txt.
  6. Ricordarsi di includere un carattere di nuova riga \n per separare il contenuto aggiunto.
  7. Dopo il blocco .then() dell'operazione appendFile, collegare un blocco .catch() per gestire eventuali errori che potrebbero verificarsi nell'intera catena.
  8. Nel blocco .catch(), fornire una funzione di callback che riceve un parametro di errore.
  9. All'interno del blocco .catch(), registrare un messaggio di errore insieme all'errore ricevuto.
  10. Eseguire lo script utilizzando Node.js digitando 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);
  });
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4
some-alt