C# Parse JSON
-
Programma C# per analizzare la
stringa JSON
utilizzando il metodoJsonConvert.DeserializeObject()
-
Programma C# per analizzare la stringa
JSON
utilizzando il metodoJObject.Parse()
-
Programma C# per analizzare la stringa
JSON
utilizzando il metodoJavaScriptSerializer().Deserialize()
JavaScript Object Notation (JSON
) è un formato per lo scambio di dati. È più facile scrivere per gli esseri umani e più semplice da elaborare per le macchine. In C# esistono molti metodi per elaborare i dati JSON
.
In questo articolo, discuteremo i metodi con cui puoi analizzare JSON
in un oggetto C#.
Programma C# per analizzare la stringa JSON
utilizzando il metodo JsonConvert.DeserializeObject()
Il metodo JsonConvert.DeserializeObject()
appartiene alla classe JsonConvert
. Viene utilizzato per convertire una stringa JSON
in un oggetto C#. L’oggetto è di una classe personalizzata che viene creata analizzando la stringa JSON
.
La sintassi corretta per utilizzare questo metodo è la seguente:
JsonConvert.DeserializeObject<CustomClassName>(JsonStringName);
Codice di esempio:
using System;
using Newtonsoft.Json;
namespace JSONParsing {
public class Parsing {
public static void Main(string[] args) {
var jsonString = @"{'FirstName': 'Olivia', 'LastName': 'Mason'}";
// Use of the method
var NameObject = JsonConvert.DeserializeObject<Name>(jsonString);
Console.WriteLine(string.Concat("The First Name and Last Name are, ", NameObject.FirstName,
" " + NameObject.LastName, "."));
}
// Creating custom class after analyzing JSON string
public class Name {
public string FirstName { get; set; }
public string LastName { get; set; }
}
}
}
Produzione:
The First Name and Last Name are : Olivia Mason.
Questo metodo genera JsonSerializationException
se la conversione da JSON
all’oggetto C# non ha esito positivo. Questa eccezione viene quindi gestita utilizzando un blocco try-catch
.
Programma C# per analizzare la stringa JSON
utilizzando il metodo JObject.Parse()
Il metodo JObject.Parse()
è un metodo di classe JObject
. Questo metodo di analisi viene utilizzato per analizzare una stringa JSON
in un oggetto C#. Analizza i dati della stringa in base al suo valore di chiave
. Questo valore chiave
viene quindi utilizzato per recuperare i dati.
La sintassi corretta per utilizzare questo metodo è la seguente:
Jobject.Parse(jsonStringName);
Codice di esempio:
using System;
using Newtonsoft.Json.Linq;
namespace JSONParsing {
public class Parsing {
public static void Main(string[] args) {
string jsonString =
@"{
'FirstName':'Olivia',
'LastName':'Mason'
}";
// Use of the method
var Name = JObject.Parse(jsonString);
Console.WriteLine(string.Concat("The First Name and Last Name is: ", Name["FirstName"],
" " + Name["LastName"], "."));
}
}
}
Produzione:
The First Name and Last Name is : Olivia Mason.
Il metodo JObject.Parse()
genera eccezioni che potrebbero essere gestite utilizzando un blocco try-catch
.
Programma C# per analizzare la stringa JSON
utilizzando il metodo JavaScriptSerializer().Deserialize()
Questo metodo può essere implementato nelle versioni successive di .NET
. Per le versioni precedenti, i due metodi precedenti sono i migliori. Questo metodo viene utilizzato per convertire una stringa JSON
in un oggetto C#.
La sintassi corretta per utilizzare questo metodo è la seguente:
JavaScriptSerializer().Deserialize<CustomClassName>(jsonString);
Codice di esempio:
using System;
using System.Web.Script.Serialization;
class Parsing {
static void Main() {
var json = @"{""name"":""Olivia Mason"",""age"":19}";
var ObjectName = new JavaScriptSerializer().Deserialize<MyInfo>(json);
Console.WriteLine("The name is:", ObjectName.name, ".");
}
}
class MyInfo {
public string name { get; set; }
public int age { get; set; }
}
Produzione:
The name is : Olivia Mason.