Come faccio a analizzare un file Yaml in Ruby?

Come faccio a analizzare un file Yaml in Ruby?
Durante lo sviluppo di un'applicazione utile in Ruby, ci sono numerose circostanze in cui vorremmo generare alcuni file di configurazione. Per comodità, vogliamo mettere la nostra utile applicazione sul server del client; Pertanto, dobbiamo creare file di configurazione. La scrittura di file di configurazione implica in genere l'utilizzo del linguaggio di serializzazione dei dati YAML. Yaml è un'abbreviazione che è una lingua di mark-up, non un documento. È spesso impiegato nei programmi che archiviano o trasportano i file di dati e di configurazione. La serializzazione dei dati è una caratteristica del modulo YAML in Ruby. Il linguaggio di mark-up estensibile (XML) e YAML sono entrambi destinati all'uso nelle comunicazioni, ma XML ha una sintassi più estesa, mentre YAML ha una grammatica più condensata.

Come ottenere yaml nel linguaggio rubino in ubuntu 20.04

Per analizzare il file YAML nel linguaggio di Ruby, dobbiamo installarlo nel nostro sistema. Eseguindo il seguente comando, possiamo installare Yaml in Ruby su Ubuntu 20.04.

$ sudo apt-get update
$ sudo apt-get Installa Ruby-Safe-Yaml

Dopo che il pacchetto YAML è stato installato sul tuo computer. Il pezzo di codice indicato di seguito può essere utilizzato nella nostra applicazione per utilizzare la libreria YAML. Potremmo aver bisogno di importare un file YAML nella lingua Ruby mentre ci occupiamo di esso. La libreria YAML semplifica l'importazione di un file YAML.

richiedere 'yaml'

Ecco alcune istanze di caricamento di file yaml con Ruby. Il modulo YAML ci consente di importare rapidamente qualsiasi file YAML nel nostro programma Ruby.

Esempio n. 1: analizzare un file YAML con il metodo del file di caricamento in Ruby in Ubuntu 20.04

Un flusso di yaml viene "caricato" quando viene convertito in tipi nativi o viceversa. Questo potrebbe essere qualsiasi oggetto Ruby, tra cui un hash, un array o un altro tipo. Yaml deve essere prima analizzato prima che possa essere caricato in questo tipo. Nella fase di analisi, piuttosto che durante la digitazione nativa, la struttura del documento diventa chiara.

Abbiamo inserito un comando "IRB" e lo abbiamo inserito nella shell del prompt ruby, dove possiamo facilmente eseguire i comandi e la funzione di rubino. Dato che dobbiamo analizzare il file YAML in questo esempio, dobbiamo prima creare il file. Abbiamo incluso la libreria dando il comando YAML richiesto e il suo vero valore restituito. Dopo questo, abbiamo inserito una serie di nomi di frutta all'interno dell'oggetto frutti. Dal file.Metodo aperto, abbiamo assegnato un nome file con l'estensione YML. All'interno del file.Sezione Metodo Apri, abbiamo eseguito il file.Scrivi l'operazione che converte l'oggetto di frutti al formato YAML.

Puoi vedere che il contenuto viene aggiunto all'interno dei frutti.File YML nel formato YAML.

Ora, per analizzare i frutti.File YML nel linguaggio di Ruby, abbiamo utilizzato il metodo del file di caricamento. L'oggetto viene creato come frutto_array, che ha il metodo del file di carico YAML. All'interno di questo metodo, abbiamo invocato la funzione di lettura che inserisce i frutti.File YML come parametro. Ora, per stampare il formato Yaml in Ruby, includere il comando "P Fruit_array" e l'array viene generato in un formato in linguaggio Ruby.

Esempio n. 2: analizzare un file YAML per il metodo complesso della struttura dei dati in Ruby in Ubuntu 20.04

Il processo di lavoro con strutture di dati più complicate è lo stesso. Una ricetta è presentata qui sotto forma di un hash che contiene un array che contiene alcuni hash.

Dobbiamo fare il file yaml prima che Ruby possa analizzare. Il codice precedente mostra come creare la struttura di dati complessa nel file YAML. Abbiamo aggiunto la libreria "YAML" per accedere alle funzionalità YAML nella shell di Ruby. Quindi, abbiamo definito una "ricetta" dell'oggetto e all'interno di quell'oggetto, l'hash viene creato con campi diversi e nidificati. Con il file.Metodo aperto, abbiamo aperto un file "Muckshake.YML "nell'opzione Modalità di scrittura. Quindi abbiamo convertito la "ricetta" dell'oggetto nel formato YAML con l'estensione TO_YAML.

Il frappè.Il file YML viene aperto e i dati vengono inseriti correttamente all'interno del formato YAML.

Ora nel comando seguente, possiamo facilmente analizzare il file Yaml nella lingua di Ruby. Quando viene recuperato il file, viene restituito un nuovo hash contenente dati identici ai dati caricati.

Esempio n. 3: analizzare un file Yaml dal flusso in Ruby in Ubuntu 20.04

Documenti multipli possono essere presenti in un flusso YAML. Il flusso completo non dovrà frequentemente essere caricato in memoria. In alternativa, è necessario caricare ogni documento individualmente. Per iterare attraverso i documenti, utilizziamo la funzione YAML :: Documenti di caricamento di Ruby. Supponiamo, per illustrazione, che abbiamo un file di registro da un server Web composto da un flusso di vari documenti YAML:

Ora, analizzeremo questo file nella lingua di Ruby con il seguente comando:

Abbiamo importato la libreria YAML nella nostra shell prompt "IRB". Quindi, abbiamo dichiarato un "registro" variabile in cui abbiamo aperto il "mio.File Yaml ”. Quindi, abbiamo un altro oggetto, "YP". All'interno di quell'oggetto, abbiamo distribuito yaml :: load_stream e elaborato iterativamente i documenti di questo file. Al metodo Ruby Puts, abbiamo assegnato il nome dei campi dal file YAML che verrà analizzato nel formato Ruby.

Qui, abbiamo superato un riepilogo di ogni riga nella seguente istantanea:

Conclusione:

Ora stiamo concludendo l'articolo sull'analisi del file Yaml nel linguaggio di Ruby. Poiché Yaml è essenzialmente solo un formato di dati, non c'è bisogno di una libreria YAML poiché è necessario interpretare i file di formattazione YAML. Per la serializzazione dei dati in formato YAML, questo modulo "YAML" offre un'interfaccia Ruby. Con il file di caricamento YAML e il metodo YAML Parse, possiamo analizzare rapidamente il file YAML in Ruby. Per aiutarti a capire, abbiamo incluso tre diversi esempi di analisi del file Yaml in Ruby.