Lettura file JSON

di il
4 risposte

Lettura file JSON

Ciao a tutti,
in un mio programma leggo un file XML tramite l'oggetto XmlDocument.Load e poi tramite SelectSingleNode e SelectNodes cerco i nodi e leggo tutto quello che mi serve senza problemi.

Adesso dovrei fare la stessa cosa con un file JSON ma non so come fare.
Utilizzando la libreria Newtonsoft riesco a leggere il file ma trovare i dati dentro è un gran problema.

Se uso il JsonTextReader devo leggere tag per tag e analizzare cosa ho letto, se utilizzo il JsonConvert.DeserializeObject mi ritorna un generico “object” ma poi non ho capito come cercare gli oggetti dentro ad esso.

Come dovrei fare ???

Grazie mille
Sergio

P.S.: so che la soluzione migliore sarebbe definire tutta la struttura del file JSON in modo che il deserialize ricostruisca il tutto, però il file JSON è parecchio complicato e devo estrarre solo pochi dati

4 Risposte

  • Re: Lettura file JSON

    Dai un'occhiata agli esempi nella documentazione del package JSON.NET che ti permettono di leggere i contenuti di un file JSON.

    Ad esempio, puoi accedere direttamente alle proprietà degli oggetti tramite Item (vedi qui), usare LINQ (vedi qui) o in alternativa (leggermente più lenta ma senz'altro molto leggibile) usando l'interfaccia dynamic (vedi qui).

    Ciao! :)

  • Re: Lettura file JSON

    Grazie mille !!!!
    Risolto con il dynamic

  • Re: Lettura file JSON

    04/12/2022 - SirJo ha scritto:


    Risolto con il dynamic

    Unica cosa: occhio che se accedi a una proprietà che poi non esiste nel file JSON, prevedo… eccezioni. :)

    Se hai “garanzie” sulla struttura del file invece, direi che puoi procedere senza grossi problemi.

    In alternativa, potresti predisporre anche un JSON Schema: analogamente a quando avviene con XML Schema, si tratta di un file JSON che definisce le regole tali per cui un altro file - sempre in formato JSON - può essere considerato valido; verificando l'adesione del file a determinate regole, potrai andare “tranquillo” con l'accesso per nome e diretto alle proprietà che rappresentano le chiavi del file JSON.

    Ciao! :)

  • Re: Lettura file JSON

    Si si, grazie mille, ho già esperienze con accesso ai file XML e JSON abbastanza semplici.
    Prima di tutto controllo sempre se c'è l'oggetto ed eventualmente gestisco le eccezioni con “If oggetto Is Nothing Then ….”

    Ciao ciao
    Sergio

Devi accedere o registrarti per scrivere nel forum
4 risposte