JSON lesen und schreiben
JSON.parse und generate
JSON lesen und schreiben ist eine kostenlose Ruby Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Ruby Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Ruby Academy-Kurs umfasst insgesamt 4 Lektionen.
Was ist JSON?
JSON (JavaScript Object Notation) ist ein leichtgewichtiges Textformat für den Datenaustausch. Es lässt sich direkt auf Ruby-Hashes und -Arrays abbilden.
Binden Sie die json-Bibliothek ein, um JSON zu verwenden.
require 'json'
data = { name: 'Ruby', year: 1995 }
puts(JSON.generate(data))JSON-Text parsen
JSON.parse wandelt eine JSON-Zeichenkette in Ruby-Objekte um: Objekte werden zu Hashes, Arrays bleiben Arrays.
require 'json'
text = '{"name":"Ruby","year":1995}'
h = JSON.parse(text)
puts(h['name'])
puts(h['year'])JSON-Text erzeugen
JSON.generate (oder to_json für Objekte) wandelt Ruby-Daten in eine kompakte JSON-Zeichenkette um.
require 'json'
arr = [1, 2, { ok: true }]
puts(arr.to_json)Leserliche Ausgabe
JSON.pretty_generate erzeugt menschenlesbares, eingerücktes JSON, ideal für Konfigurationsdateien und das Debugging.
require 'json'
data = { name: 'Ruby', tags: ['fun', 'oop'] }
puts(JSON.pretty_generate(data))Symbol-Schlüssel beim Parsen
Standardmäßig sind geparste Schlüssel Strings. Übergeben Sie symbolize_names: true, um stattdessen Symbol-Schlüssel zu erhalten.
require 'json'
h = JSON.parse('{"name":"Ruby"}', symbolize_names: true)
puts(h[:name])Verschachtelte Strukturen
JSON unterstützt Verschachtelungen. Beim Parsen wird der vollständige Baum aus Hashes und Arrays wiederhergestellt.
require 'json'
text = '{"user":{"name":"Ada","roles":["admin","dev"]}}'
h = JSON.parse(text)
puts(h['user']['name'])
puts(h['user']['roles'][1])Typzuordnung
JSON-Typen werden Ruby folgendermaßen zugeordnet:
- Objekt → Hash, Array → Array
- Zeichenkette → String, Zahl → Integer/Float
- true/false → true/false, null → nil
require 'json'
h = JSON.parse('{"a":1,"b":1.5,"c":null,"d":true}')
puts(h['a'].class)
puts(h['c'].inspect)JSON in eine Datei schreiben
Kombinieren Sie pretty_generate mit File.write, um Daten auf der Festplatte zu speichern.
require 'json'
require 'tmpdir'
path = File.join(Dir.tmpdir, 'data.json')
File.write(path, JSON.pretty_generate({ ok: true }))
puts(File.read(path))JSON aus einer Datei lesen
Lesen Sie den Inhalt der Datei ein und parsen Sie ihn in einem Schritt.
require 'json'
require 'tmpdir'
path = File.join(Dir.tmpdir, 'cfg.json')
File.write(path, '{"port":8081}')
cfg = JSON.parse(File.read(path))
puts(cfg['port'])Parse-Fehler behandeln
Fehlerhaftes JSON löst JSON::ParserError aus. Fangen Sie den Fehler ab, um ungültige Eingaben angemessen zu behandeln.
require 'json'
begin
JSON.parse('{not valid}')
rescue JSON::ParserError => e
puts 'Invalid JSON caught'
endHin- und Rückkonvertierung
Das Erzeugen und anschließende Parsen sollte gleichwertige Daten zurückgeben – eine nützliche Plausibilitätsprüfung.
require 'json'
original = { id: 7, tags: ['a', 'b'] }
back = JSON.parse(original.to_json, symbolize_names: true)
puts(back == original)Schnelltest
Welche Option bewirkt, dass JSON.parse Symbol-Schlüssel statt String-Schlüssel zurückgibt?
Zusammenfassung: JSON lesen und schreiben
Sie können Daten in JSON umwandeln und daraus zurücklesen:
JSON.parsewandelt Zeichenketten in Ruby-Objekte umto_json/JSON.generateerzeugen kompaktes JSONpretty_generateerzeugt eine lesbare Ausgabesymbolize_names: trueerzeugt Symbol-Schlüssel- Fangen Sie bei ungültigen Eingaben
JSON::ParserErrorab
require 'json'
puts(JSON.parse('[1,2,3]').sum)Häufig gestellte Fragen
Ist die Lektion „JSON lesen und schreiben“ kostenlos?
Ja — der vollständige Text von „JSON lesen und schreiben“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Ruby Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Ruby Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „JSON lesen und schreiben“?
JSON.parse und generate Du übst Ruby Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Ruby Academy zu starten?
Keine Vorkenntnisse erforderlich. Ruby Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „JSON lesen und schreiben“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Ruby Academy-Lektion Code schreiben und ausführen?
Ja. Jede Ruby Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- JSON lesen und schreiben
- Mit CSV arbeiten
- YAML-Konfiguration
- Ein Format auswählen