Come analizzare Json in Ruby

Come analizzare Json in Ruby
La notazione dell'oggetto JavaScript, o JSON in breve, è un formato di scambio di dati semplice e incredibilmente leggero. JSON è facile da scrivere e leggere sia per macchine che per l'uomo.

JSON è ovunque e viene utilizzato per trasferire dati strutturati sulla rete con un'importante applicazione nelle API.

Questa guida rapida passerà come utilizzare e analizzare i dati JSON utilizzando il linguaggio di programmazione Ruby.

Cosa sta analizzando?

L'analisi è il processo di rompere un componente, come una stringa di dati, in vari componenti autonomi utilizzabili individualmente.

Come ottenere i dati JSON

Prima di discutere su come analizzare JSON in Ruby, è bene assicurarci di avere un file JSON con cui lavorare.

Se non si dispone di un file JSON con cui lavorare, puoi utilizzare i generatori JSON online o le domande da una popolare API pubblica.

Installazione

Per analizzare JSON con Ruby, dobbiamo installare il pacchetto JSON utilizzando il Gestione pacchetti Gem. Possiamo farlo usando il comando:

Gem Installa JSON

Per verificare se l'installazione ha esito positivo, apri IRB ed esegui il codice:

richiedere 'json'

L'esecuzione di questo comando dovrebbe restituire true se è installato il pacchetto correttamente:

IRB (Main): 001: 0> Richiedi 'JSON'
=> vero

Come leggere il file JSON

Il prossimo passo è leggere i dati JSON. Per questo, utilizziamo il file.Metodo di lettura, come mostrato nel codice di esempio seguente:

richiedere 'json'
raw_data = file.Leggi ('NASA.json ')

Sostituire la NASA.File JSON con il nome del file effettivo del file JSON che si desidera analizzare.

Come analizzare i dati JSON

Una volta caricato il file, possiamo analizzare i dati JSON utilizzando JSON.Metodo di analisi. Questo metodo creerà un hash Ruby con le chiavi JSON.

Per esempio:

richiedere 'json'
raw_data = file.Leggi ('NASA.json ')
NASA_DataHash = JSON.Parse (raw_data)

Una volta caricato, possiamo procedere a lavorare con i dati come un normale Hash Ruby.

Ad esempio, per ottenere le chiavi, possiamo fare:

richiedere 'json'
raw_data = file.Leggi ('NASA.json ')
NASA_DataHash = JSON.Parse (raw_data)
mette NASA_DataHash.tasti

Puoi anche ottenere i valori archiviati nei dati JSON utilizzando il .Metodo dei valori.

Scrivi a JSON

Supponiamo di voler scrivere in un file JSON. Iniziamo leggendo il file JSON e creando un hash Ruby. Successivamente, possiamo modificare i valori e quindi scriverli in un file JSON.

Facciamo un esempio di esempio JSON con i valori come mostrato:


"Nome": "John Doe",
"Age": 30,
"Ruolo": "Programmatore di Python",
"Gruppo": "Ax-100"

Possiamo iniziare leggendo il file come:

richiedere 'json'
file = file.Leggi (“Utente.JSON ”)

Una volta caricato il file, possiamo analizzare le informazioni JSON utilizzando JSON.Metodo di analisi come:

user_info = json.parse (file);

Una volta che il file analizzato in un hash di rubino, possiamo utilizzare metodi integrati per manipolare i valori.

Cominciamo prendendo le chiavi:

mette user_info.tasti

Questo dovrebbe stampare le chiavi hash che sono fondamentalmente le chiavi JSON. Ogni valore è mappato al rispettivo valore.

$ RUBY JSON.Rb
nome
età
ruolo
gruppo

Il prossimo passo è aggiungere modifiche alla chiave esistente. Possiamo semplicemente usare il metodo di unione come:

user_info.unire!("Paese": "Stati Uniti")

Una volta che hai apportato tutte le modifiche all'hash di Ruby e desideri scrivere le modifiche al file JSON, possiamo usare il metodo di scrittura e scaricare il contenuto dell'hash in formato JSON come mostrato nel codice seguente.

File.Scrivi ("Utente.JSON ", JSON.dump (user_info))

Una volta completato, le modifiche verranno aggiunte al file specificato.


"Nome": "John Doe",
"Age": 30,
"Ruolo": "Programmatore di Python",
"Gruppo": "Ax-100",
"Paese": "Stati Uniti"

Convertire l'hash in json

Se hai un hash Ruby grezzo, puoi generare dati JSON utilizzando il metodo Generate. Considera l'esempio seguente:

richiedere 'json'
this_hash = : name => "John doe" ,: age => 30 ,: dole => "programmatore Python" ,: group => "ax-100" ,: country => "Stati Uniti"
JSonified = JSON.generare (this_hash)
mette JSonified

Quanto sopra dovrebbe creare dati JSON con chiavi e valori corrispondenti alle chiavi e ai valori dell'hash.

Per saperne di più su come lavorare con gli hash di Ruby, considera il nostro tutorial sull'argomento.

Conclusione

Come mostrato in questo tutorial, l'analisi dei dati JSON è incredibilmente semplice in Ruby. Considera la documentazione per saperne di più.