Computerwissenschaften

Verwenden des JSON-Edelsteins in Ruby

Mit dem json- Edelstein ist es einfach, JSON in Ruby zu analysieren und zu generieren . Es bietet eine API zum Parsen von JSON aus Text sowie zum Generieren von JSON-Text aus beliebigen Ruby-Objekten. Es ist leicht die am häufigsten verwendete JSON-Bibliothek in Ruby.

 

Installieren des JSON Gem

Unter Ruby 1.8.7 müssen Sie einen Edelstein installieren. In Ruby 1.9.2 wird das json- Juwel jedoch mit der Ruby-Kerndistribution gebündelt. Wenn Sie also 1.9.2 verwenden, sind Sie wahrscheinlich fertig. Wenn Sie auf 1.8.7 sind, müssen Sie einen Edelstein installieren.

Bevor Sie den JSON-Edelstein installieren, stellen Sie zunächst fest, dass dieser Edelstein in zwei Varianten verteilt ist. Durch einfaches Installieren dieses Edelsteins mit gem install json wird die C-Erweiterungsvariante installiert. Dies erfordert die Installation eines C-Compilers und ist möglicherweise nicht auf allen Systemen verfügbar oder geeignet. Wenn Sie diese Version installieren können, sollten Sie dies tun.

Wenn Sie die C-Erweiterungsversion nicht installieren können, sollten Sie stattdessen json_pure installieren . Dies ist das gleiche Juwel, das in reinem Ruby implementiert ist. Es sollte überall dort ausgeführt werden, wo Ruby-Code ausgeführt wird, auf allen Plattformen und auf einer Vielzahl von Interpreten. Es ist jedoch erheblich langsamer als die C-Erweiterungsversion.

Nach der Installation gibt es einige Möglichkeiten, dieses Juwel zu benötigen. Ein erforderliches ‚json‘ (nach einer Voraussetzung ‚rubygems‘ erforderlich, falls erforderlich) erfordert die jeweils verfügbare Variante und bevorzugt die C-Erweiterungsvariante, wenn beide installiert sind. Eine Anforderung ‚json / pure‘ erfordert explizit die reine Variante, und eine Anforderung ‚json / ext‘ erfordert explizit die C-Erweiterungsvariante.

 

JSON analysieren

Bevor wir beginnen, definieren wir einen einfachen JSON, der analysiert werden soll. JSON wird normalerweise von Webanwendungen generiert und kann sehr entmutigend sein, mit tiefen Hierarchien, die schwer zu navigieren sind. Wir werden mit etwas Einfachem beginnen. Die oberste Ebene dieses Dokuments ist ein Hash. Die ersten beiden Schlüssel enthalten Zeichenfolgen und die letzten beiden Schlüssel enthalten Arrays von Zeichenfolgen.

Das Parsen ist also ganz einfach. Angenommen, dieser JSON ist in einer Datei namens employee.json gespeichert , können Sie dies wie folgt in ein Ruby-Objekt analysieren.

Und die Ausgabe dieses Programms. Beachten Sie, dass, wenn Sie dieses Programm unter Ruby 1.8.7 ausführen, die Reihenfolge, in der die Schlüssel aus dem Hash abgerufen werden, nicht unbedingt der Reihenfolge entspricht, in der sie eingefügt wurden. Daher wird Ihre Ausgabe möglicherweise nicht in der richtigen Reihenfolge angezeigt.

Das empls- Objekt selbst ist nur ein Hash. Nichts Besonderes. Es hat 4 Schlüssel, genau wie das JSON-Dokument. Zwei der Schlüssel sind Zeichenfolgen, und zwei sind Arrays von Zeichenfolgen. Keine Überraschungen, der JSON wurde zur Kenntnisnahme originalgetreu in Ruby-Objekte transkribiert.

Und das ist ungefähr alles, was Sie über das Parsen von JSON wissen müssen. Es gibt einige Probleme, die auftauchen, aber diese werden in einem späteren Artikel behandelt. In fast allen Fällen lesen Sie einfach ein JSON-Dokument aus einer Datei oder über HTTP und geben es an JSON.parse weiter .

Similar Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.