Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Arbeide med Filsystemet i Node.js | Bygge Konsollapplikasjoner med Node.js
Quizzes & Challenges
Quizzes
Challenges
/
Backend-Utvikling med Node.js og Express.js

bookArbeide med Filsystemet i Node.js

FileSystem-modulen (fs) er en kjernemodul i Node.js som gir kraftige muligheter for å programmere interaksjon med filer. Denne modulen er nyttig for ulike oppgaver, inkludert håndtering av konfigurasjoner, organisering av data og lesing og skriving av filinnhold.

Fil-lesing med fs.readFile

Metoden fs.readFile returnerer et løfte (promise) som løses med filens innhold. Den muliggjør asynkron fil-lesing, noe som gjør den egnet for å lese både tekst- og binærfiler.

fs.readFile(path, options)
  • path – filbanen som skal leses;
  • options – et valgfritt objekt som spesifiserer alternativer som tegnkoding.

Tenk deg at du bygger en dynamisk bloggplattform. Her kommer fs.readFile-metoden inn i bildet og henter raskt blogginnlegg fra en fil.

Kodeeksempel: Lese innhold

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);
  });

Trinnvis forklaring

Filskriving med fs.writeFile

Metoden fs.writeFile returnerer et løfte som oppfylles når filen er skrevet. Den brukes til å skrive data asynkront til en fil, enten ny eller eksisterende. Den gir muligheter for å spesifisere data, koding og filrettigheter.

fs.writeFile(file, data, options)
  • file – filbanen det skal skrives til;
  • data – dataene som skal skrives, som kan være en streng eller en buffer;
  • options – et valgfritt objekt som spesifiserer alternativer som koding og filmodus.

Tenk deg at vi må lagre en ny bruker i filen user-db.json. Her sørger metoden fs.writeFile for at informasjonen vår blir lagret.

Kodeeksempel: Skrive brukerdata

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);
  });

Trinnvis forklaring

Utvidelse med fs.appendFile

Metoden fs.appendFile returnerer et løfte som oppfylles når dataene er lagt til filen. Den brukes til å legge til data asynkront i en eksisterende fil, samtidig som tidligere innhold bevares.

fs.appendFile(file, data, options)
  • file – filbanen det skal legges til data i;
  • data – dataene som skal legges til, som kan være en streng eller en buffer;
  • options – et valgfritt objekt som spesifiserer alternativer som koding og filmodus.

Se for deg en travel chatteapplikasjon som logger samtaler. Når nye meldinger kommer inn, legger metoden fs.appendFile til nye meldinger i chatloggen og bevarer tidligere interaksjoner.

Kodeeksempel: Legge til chatmeldinger

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);
  });

Trinnvis forklaring

Merk

  • fs.writeFile brukes til å fullstendig erstatte innholdet i en fil eller opprette en ny fil;
  • fs.appendFile brukes til å legge til nye data på slutten av en eksisterende fil uten å overskrive det som allerede finnes.

1. Modulen fs lar oss programmere samhandling med filer.

2. Hvilken metode bruker vi for å lese innholdet i en fil?

3. Hvordan skiller fs.appendFile seg fra fs.writeFile?

question mark

Modulen fs lar oss programmere samhandling med filer.

Select the correct answer

question mark

Hvilken metode bruker vi for å lese innholdet i en fil?

Select the correct answer

question mark

Hvordan skiller fs.appendFile seg fra fs.writeFile?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain the difference between fs.readFile, fs.writeFile, and fs.appendFile?

How do I handle errors when using these file system methods?

Can you provide more real-world examples of when to use each method?

bookArbeide med Filsystemet i Node.js

Sveip for å vise menyen

FileSystem-modulen (fs) er en kjernemodul i Node.js som gir kraftige muligheter for å programmere interaksjon med filer. Denne modulen er nyttig for ulike oppgaver, inkludert håndtering av konfigurasjoner, organisering av data og lesing og skriving av filinnhold.

Fil-lesing med fs.readFile

Metoden fs.readFile returnerer et løfte (promise) som løses med filens innhold. Den muliggjør asynkron fil-lesing, noe som gjør den egnet for å lese både tekst- og binærfiler.

fs.readFile(path, options)
  • path – filbanen som skal leses;
  • options – et valgfritt objekt som spesifiserer alternativer som tegnkoding.

Tenk deg at du bygger en dynamisk bloggplattform. Her kommer fs.readFile-metoden inn i bildet og henter raskt blogginnlegg fra en fil.

Kodeeksempel: Lese innhold

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);
  });

Trinnvis forklaring

Filskriving med fs.writeFile

Metoden fs.writeFile returnerer et løfte som oppfylles når filen er skrevet. Den brukes til å skrive data asynkront til en fil, enten ny eller eksisterende. Den gir muligheter for å spesifisere data, koding og filrettigheter.

fs.writeFile(file, data, options)
  • file – filbanen det skal skrives til;
  • data – dataene som skal skrives, som kan være en streng eller en buffer;
  • options – et valgfritt objekt som spesifiserer alternativer som koding og filmodus.

Tenk deg at vi må lagre en ny bruker i filen user-db.json. Her sørger metoden fs.writeFile for at informasjonen vår blir lagret.

Kodeeksempel: Skrive brukerdata

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);
  });

Trinnvis forklaring

Utvidelse med fs.appendFile

Metoden fs.appendFile returnerer et løfte som oppfylles når dataene er lagt til filen. Den brukes til å legge til data asynkront i en eksisterende fil, samtidig som tidligere innhold bevares.

fs.appendFile(file, data, options)
  • file – filbanen det skal legges til data i;
  • data – dataene som skal legges til, som kan være en streng eller en buffer;
  • options – et valgfritt objekt som spesifiserer alternativer som koding og filmodus.

Se for deg en travel chatteapplikasjon som logger samtaler. Når nye meldinger kommer inn, legger metoden fs.appendFile til nye meldinger i chatloggen og bevarer tidligere interaksjoner.

Kodeeksempel: Legge til chatmeldinger

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);
  });

Trinnvis forklaring

Merk

  • fs.writeFile brukes til å fullstendig erstatte innholdet i en fil eller opprette en ny fil;
  • fs.appendFile brukes til å legge til nye data på slutten av en eksisterende fil uten å overskrive det som allerede finnes.

1. Modulen fs lar oss programmere samhandling med filer.

2. Hvilken metode bruker vi for å lese innholdet i en fil?

3. Hvordan skiller fs.appendFile seg fra fs.writeFile?

question mark

Modulen fs lar oss programmere samhandling med filer.

Select the correct answer

question mark

Hvilken metode bruker vi for å lese innholdet i en fil?

Select the correct answer

question mark

Hvordan skiller fs.appendFile seg fra fs.writeFile?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 3
some-alt