C# 구문 분석 JSON
-
JsonConvert.DeserializeObject()
를 사용하여JSON 문자열
을 구문 분석하는 C# 프로그램 -
JObject.Parse()
를 사용하여JSON
문자열을 구문 분석하는 C# 프로그램 -
JavaScriptSerializer().Deserialize()
를 사용하여JSON
문자열을 구문 분석하는 C# 프로그램
JSON (JavaScript Object Notation)은 데이터 교환을위한 형식입니다. 사람이 작성하기 쉽고 기계 처리가 더 간단합니다. C#에는 JSON 데이터를 처리하는 많은 방법이 있습니다.
이 기사에서는 JSON
을 C# 객체로 구문 분석 할 수있는 방법에 대해 설명합니다.
JsonConvert.DeserializeObject()
를 사용하여JSON 문자열
을 구문 분석하는 C# 프로그램
JsonConvert.DeserializeObject()
메소드는JsonConvert
클래스에 속합니다. JSON 문자열을 C# 객체로 변환하는 데 사용됩니다. 객체는JSON
문자열을 분석하여 생성 된 커스텀 클래스입니다.
이 방법을 사용하는 올바른 구문은 다음과 같습니다.
JsonConvert.DeserializeObject<CustomClassName>(JsonStringName);
예제 코드:
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; }
}
}
}
출력:
The First Name and Last Name are: Olivia Mason.
이 메소드는JSON
에서 C# 객체로의 변환에 실패하면JsonSerializationException
을 던집니다. 이 예외는try-catch
블록을 사용하여 처리됩니다.
JObject.Parse()
를 사용하여JSON
문자열을 구문 분석하는 C# 프로그램
JObject.Parse()
메소드는JObject
클래스 메소드입니다. 이 구문 분석 방법은JSON
문자열을 C# 객체로 구문 분석하는 데 사용됩니다. 그것은 그 키 값에 따라 문자열 데이터를 해석한다.그런 다음 이 키 값은 데이터를 검색하는 데 사용됩니다.
이 방법을 사용하는 올바른 구문은 다음과 같습니다.
Jobject.Parse(jsonStringName);
예제 코드:
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"], "."));
}
}
}
출력:
The First Name and Last Name is: Olivia Mason.
JObject.Parse()
메소드는try-catch
블록을 사용하여 처리 할 수있는 예외를 발생시킵니다.
JavaScriptSerializer().Deserialize()
를 사용하여JSON
문자열을 구문 분석하는 C# 프로그램
이 메소드는 이후 버전의 .NET에서 구현 될 수 있습니다. 이전 버전의 경우 위의 두 가지 방법이 가장 좋습니다. 이 메소드는 JSON 문자열을 C# 객체로 변환하는 데 사용됩니다.
이 방법을 사용하는 올바른 구문은 다음과 같습니다.
JavaScriptSerializer().Deserialize<CustomClassName>(jsonString);
예제 코드:
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; }
}
출력:
The name is: Olivia Mason.