Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Dateien als Einfache Speicherlösung Verwenden | Abschnitt
Node.js-Grundlagen

bookDateien als Einfache Speicherlösung Verwenden

Swipe um das Menü anzuzeigen

Bisher haben Sie gelernt, wie man:

  • Daten aus einer Datei liest;
  • Daten in eine Datei schreibt;
  • Neuen Inhalt anhängt.

Nun ist es an der Zeit, Dateien als einfaches Speichersystem zu verwenden.

Warum wir strukturierte Daten benötigen

Das Speichern von einfachem Text reicht für reale Anwendungen nicht aus.

Zum Beispiel:

First note
Second note

Dies ist schwer zu verwalten, weil:

  • Wir keine bestimmte Notiz einfach aktualisieren können;
  • Wir die Daten nicht organisieren können;
  • Wir keine zusätzlichen Informationen hinzufügen können.

Verwendung von JSON zur Speicherung

Um strukturierte Daten zu speichern, verwenden wir JSON.

JSON sieht aus wie ein JavaScript-Objekt:

[
  { "text": "First note" },
  { "text": "Second note" }
]

Dieses Format ermöglicht es uns:

  • Mehrere Einträge zu speichern;
  • Daten übersichtlich zu organisieren;
  • Damit im Code zu arbeiten.

Schritt 1: Daten aus einer Datei lesen

const fs = require('fs');

const data = fs.readFileSync('notes.json', 'utf-8');

Dies gibt einen String zurück.

Schritt 2: JSON in JavaScript umwandeln

const notes = JSON.parse(data);

Nun ist notes ein echtes Array, mit dem wir arbeiten können.

Schritt 3: Daten aktualisieren

notes.push({ text: 'New note' });

Wir fügen dem Array eine neue Notiz hinzu.

Schritt 4: Daten zurück in die Datei speichern

fs.writeFileSync('notes.json', JSON.stringify(notes));
  • JSON.stringify wandelt JavaScript zurück in JSON um;
  • Die Datei wird mit den neuen Daten aktualisiert.

Vollständiges Beispiel

const fs = require('fs');

// Read file
const data = fs.readFileSync('notes.json', 'utf-8');

// Convert to JS
const notes = JSON.parse(data);

// Update data
notes.push({ text: 'Learn Node.js' });

// Save back
fs.writeFileSync('notes.json', JSON.stringify(notes));

Behandlung des ersten Starts (leere Datei)

Wenn die Datei nicht existiert oder leer ist, stürzt die Anwendung ab.

Dies kann behoben werden, indem mit einem leeren Array begonnen wird:

let notes = [];

try {
  const data = fs.readFileSync('notes.json', 'utf-8');
  notes = JSON.parse(data);
} catch (error) {
  notes = [];
}
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 24

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 1. Kapitel 24
some-alt