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

bookLavorare con il File System in Node.js

Il modulo FileSystem (fs) è un modulo core di Node.js, che offre potenti funzionalità per interagire con i file in modo programmatico. Questo modulo è utile in diverse attività, tra cui la gestione delle configurazioni, l'organizzazione dei dati e la lettura e scrittura del contenuto dei file.

📖 Lettura dei file con fs.readFile

Il metodo fs.readFile restituisce una promessa che si risolve con il contenuto del file. Consente la lettura asincrona dei file, rendendolo adatto sia per file di testo che binari.

fs.readFile(path, options)
  • path - il percorso del file da leggere;
  • options - un oggetto opzionale che specifica opzioni come la codifica.

Immagina di costruire una piattaforma di blogging dinamica. Qui, il metodo fs.readFile entra in gioco, recuperando rapidamente il contenuto dei post del blog da un file.

Esempio di codice: Lettura del contenuto

const fs = require('fs').promises;

fs.readFile('blog-post.txt', 'utf-8')
  .then(content => {
    console.log('Current content:', content);
  })
  .catch(err => {
    console.error('Error reading file:', err);
  });

Spiegazione passo per passo

🖋️ Scrittura di file con fs.writeFile

Il metodo fs.writeFile restituisce una promise che si risolve quando il file è stato scritto. Viene utilizzato per scrivere dati in modo asincrono su un file, che può essere nuovo o esistente. Offre opzioni per specificare i dati, la codifica e i permessi del file.

fs.writeFile(file, data, options)
  • file - il percorso del file su cui scrivere;
  • data - i dati da scrivere, che possono essere una stringa o un buffer;
  • options - un oggetto opzionale che specifica opzioni come la codifica e la modalità del file.

Si immagini di dover salvare un nuovo utente nel file user-db.json. Qui il metodo fs.writeFile garantisce che le nostre informazioni vengano memorizzate correttamente.

Esempio di codice: Scrittura dei dati utente

const fs = require("fs").promises;

const newUser = {
  id: 1,
  username: "Nero",
  email: "arman@example.com",
};

const fileName = "user-db.json";

fs.writeFile(fileName, JSON.stringify(newUser), "utf-8")
  .then(() => {
    console.log("User information saved successfully.");
  })
  .catch((err) => {
    console.error("Error writing file:", err);
  });

Spiegazione passo per passo

📄 Estensione con fs.appendFile

Il metodo fs.appendFile restituisce una promise che si risolve quando i dati sono stati aggiunti al file. Viene utilizzato per aggiungere dati in modo asincrono a un file esistente, preservando il contenuto precedente.

fs.appendFile(file, data, options)
  • file - il percorso del file a cui verranno aggiunti i dati;
  • data - i dati da aggiungere, che possono essere una stringa o un buffer;
  • options - un oggetto opzionale che specifica opzioni come la codifica e la modalità del file.

Si immagini una vivace applicazione di chat che registra le conversazioni. Quando arrivano nuovi messaggi, il metodo fs.appendFile aggiunge i nuovi messaggi al registro della chat mantenendo le interazioni precedenti.

Esempio di codice: Aggiunta di messaggi alla chat

const fs = require("fs").promises;

const newMessage = "User2: Hello, how are you?";

fs.appendFile("chat.txt", newMessage + "\n")
  .then(() => {
    console.log("Message added to chat log.");
  })
  .catch((err) => {
    console.error("Error appending message:", err);
  });

Spiegazione Passo per Passo

Nota

  • fs.writeFile viene utilizzato per sostituire completamente il contenuto di un file o creare un nuovo file;
  • fs.appendFile viene utilizzato per aggiungere nuovi dati alla fine di un file esistente senza sovrascrivere ciò che è già presente.

🧐 Quiz

Valutiamo la tua comprensione dei concetti del modulo FileSystem (fs):

1. Il modulo fs consente di interagire programmaticamente con i file.

2. Quale metodo utilizzeremmo per leggere il contenuto di un file?

3. In che modo fs.appendFile differisce da fs.writeFile?

question mark

Il modulo fs consente di interagire programmaticamente con i file.

Select the correct answer

question mark

Quale metodo utilizzeremmo per leggere il contenuto di un file?

Select the correct answer

question mark

In che modo fs.appendFile differisce da fs.writeFile?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 3

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

bookLavorare con il File System in Node.js

Scorri per mostrare il menu

Il modulo FileSystem (fs) è un modulo core di Node.js, che offre potenti funzionalità per interagire con i file in modo programmatico. Questo modulo è utile in diverse attività, tra cui la gestione delle configurazioni, l'organizzazione dei dati e la lettura e scrittura del contenuto dei file.

📖 Lettura dei file con fs.readFile

Il metodo fs.readFile restituisce una promessa che si risolve con il contenuto del file. Consente la lettura asincrona dei file, rendendolo adatto sia per file di testo che binari.

fs.readFile(path, options)
  • path - il percorso del file da leggere;
  • options - un oggetto opzionale che specifica opzioni come la codifica.

Immagina di costruire una piattaforma di blogging dinamica. Qui, il metodo fs.readFile entra in gioco, recuperando rapidamente il contenuto dei post del blog da un file.

Esempio di codice: Lettura del contenuto

const fs = require('fs').promises;

fs.readFile('blog-post.txt', 'utf-8')
  .then(content => {
    console.log('Current content:', content);
  })
  .catch(err => {
    console.error('Error reading file:', err);
  });

Spiegazione passo per passo

🖋️ Scrittura di file con fs.writeFile

Il metodo fs.writeFile restituisce una promise che si risolve quando il file è stato scritto. Viene utilizzato per scrivere dati in modo asincrono su un file, che può essere nuovo o esistente. Offre opzioni per specificare i dati, la codifica e i permessi del file.

fs.writeFile(file, data, options)
  • file - il percorso del file su cui scrivere;
  • data - i dati da scrivere, che possono essere una stringa o un buffer;
  • options - un oggetto opzionale che specifica opzioni come la codifica e la modalità del file.

Si immagini di dover salvare un nuovo utente nel file user-db.json. Qui il metodo fs.writeFile garantisce che le nostre informazioni vengano memorizzate correttamente.

Esempio di codice: Scrittura dei dati utente

const fs = require("fs").promises;

const newUser = {
  id: 1,
  username: "Nero",
  email: "arman@example.com",
};

const fileName = "user-db.json";

fs.writeFile(fileName, JSON.stringify(newUser), "utf-8")
  .then(() => {
    console.log("User information saved successfully.");
  })
  .catch((err) => {
    console.error("Error writing file:", err);
  });

Spiegazione passo per passo

📄 Estensione con fs.appendFile

Il metodo fs.appendFile restituisce una promise che si risolve quando i dati sono stati aggiunti al file. Viene utilizzato per aggiungere dati in modo asincrono a un file esistente, preservando il contenuto precedente.

fs.appendFile(file, data, options)
  • file - il percorso del file a cui verranno aggiunti i dati;
  • data - i dati da aggiungere, che possono essere una stringa o un buffer;
  • options - un oggetto opzionale che specifica opzioni come la codifica e la modalità del file.

Si immagini una vivace applicazione di chat che registra le conversazioni. Quando arrivano nuovi messaggi, il metodo fs.appendFile aggiunge i nuovi messaggi al registro della chat mantenendo le interazioni precedenti.

Esempio di codice: Aggiunta di messaggi alla chat

const fs = require("fs").promises;

const newMessage = "User2: Hello, how are you?";

fs.appendFile("chat.txt", newMessage + "\n")
  .then(() => {
    console.log("Message added to chat log.");
  })
  .catch((err) => {
    console.error("Error appending message:", err);
  });

Spiegazione Passo per Passo

Nota

  • fs.writeFile viene utilizzato per sostituire completamente il contenuto di un file o creare un nuovo file;
  • fs.appendFile viene utilizzato per aggiungere nuovi dati alla fine di un file esistente senza sovrascrivere ciò che è già presente.

🧐 Quiz

Valutiamo la tua comprensione dei concetti del modulo FileSystem (fs):

1. Il modulo fs consente di interagire programmaticamente con i file.

2. Quale metodo utilizzeremmo per leggere il contenuto di un file?

3. In che modo fs.appendFile differisce da fs.writeFile?

question mark

Il modulo fs consente di interagire programmaticamente con i file.

Select the correct answer

question mark

Quale metodo utilizzeremmo per leggere il contenuto di un file?

Select the correct answer

question mark

In che modo fs.appendFile differisce da fs.writeFile?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 3
some-alt