C# Parse JSON
-
Programa C# para analisar
string JSON
usando o métodoJsonConvert.DeserializeObject()
-
C# Program to Parse
JSON
String UtilizandoJObject.Parse()
Método -
C# Program to Parse
JSON
String UtilizandoJavaScriptSerializer().Deserialize()
Método
JavaScript Object Notation (JSON
) é um formato para o intercâmbio de dados. É mais fácil de escrever para humanos e mais simples de processar para máquinas. Em C#, há muitos métodos para processar dados JSON
.
Neste artigo, vamos discutir os métodos pelos quais você pode analisar o JSON
em um objeto em C#.
Programa C# para analisar string JSON
usando o método JsonConvert.DeserializeObject()
O método JsonConvert.DeserializeObject()
pertence à classe JsonConvert
. Ele é utilizado para converter uma string JSON
em um objeto C#. O objeto é de uma classe personalizada que é criada através da análise da string JSON
.
A sintaxe correta para utilizar este método é a seguinte:
JsonConvert.DeserializeObject<CustomClassName>(JsonStringName);
Exemplo de código:
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; }
}
}
}
Resultado:
The First Name and Last Name are : Olivia Mason.
Este método lança JsonSerializationException
se a conversão de JSON
para objeto em C# não for bem sucedida. Esta exceção é então resolvida utilizando um bloco de try-catch
.
C# Program to Parse JSON
String Utilizando JObject.Parse()
Método
O método JObject.Parse()
é um método de classe JObject
. Este método de parse é utilizado para analisar uma string JSON
em um objeto C#. Ele analisa os dados da string com base em seu valor key
. Este valor chave
é então utilizado para recuperar os dados.
A sintaxe correta para utilizar este método é a seguinte:
Jobject.Parse(jsonStringName);
Exemplo de código:
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"], "."));
}
}
}
Resultado:
The First Name and Last Name is : Olivia Mason.
O método JObject.Parse()
lança exceções que poderiam ser tratadas utilizando um bloco try-catch
.
C# Program to Parse JSON
String Utilizando JavaScriptSerializer().Deserialize()
Método
Este método pode ser implementado nas versões posteriores do .NET
. Para as versões anteriores, os dois métodos acima são os melhores. Este método é utilizado para converter uma string JSON
em um objeto C#.
A sintaxe correta para utilizar este método é a seguinte:
JavaScriptSerializer().Deserialize<CustomClassName>(jsonString);
Exemplo de código:
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; }
}
Resultado:
The name is : Olivia Mason.