반응형
Newtonsoft JSON 역 직렬화
내 JSON은 다음과 같습니다.
{"t":"1339886","a":true,"data":[],"Type":[['Ants','Biz','Tro']]}
C # 용 Newtonsoft JSON.NET deserialize 라이브러리를 찾았습니다. 다음과 같이 사용하려고했습니다.
object JsonDe = JsonConvert.DeserializeObject(Json);
JsonDe
모든 "유형"데이터를 얻기 위해 개체에 액세스하려면 어떻게 해야합니까? 루프로 시도했지만 개체에 열거자가 없기 때문에 작동하지 않습니다.
JSON에있는 필드를 보유하는 클래스를 구현할 수 있습니다.
class MyData
{
public string t;
public bool a;
public object[] data;
public string[][] type;
}
그런 다음 DeserializeObject의 일반 버전을 사용합니다.
MyData tmp = JsonConvert.DeserializeObject<MyData>(json);
foreach (string typeStr in tmp.type[0])
{
// Do something with typeStr
}
문서 : JSON 직렬화 및 역 직렬화
훨씬 더 쉬운 솔루션 : 동적 유형 사용
Json.NET 4.0 릴리스 1부터는 기본 동적 지원이 있습니다. 클래스를 선언 할 필요가 없으며 dynamic
다음을 사용하십시오 .
dynamic jsonDe = JsonConvert.DeserializeObject(json);
모든 필드를 사용할 수 있습니다.
foreach (string typeStr in jsonDe.Type[0])
{
// Do something with typeStr
}
string t = jsonDe.t;
bool a = jsonDe.a;
object[] data = jsonDe.data;
string[][] type = jsonDe.Type;
동적 을 사용하면 데이터를 보관하기 위해 특정 클래스를 만들 필요가 없습니다.
당으로 Newtonsoft 문서 당신은 또한이 같은 익명의 객체 직렬화 수 :
var definition = new { Name = "" };
string json1 = @"{'Name':'James'}";
var customer1 = JsonConvert.DeserializeAnonymousType(json1, definition);
Console.WriteLine(customer1.Name);
// James
참고 URL : https://stackoverflow.com/questions/17038810/newtonsoft-json-deserialize
반응형
'your programing' 카테고리의 다른 글
CSS를 사용하여 이미지 사이의 공간 제거 (0) | 2020.10.13 |
---|---|
Android가 포 그라운드 서비스를 종료합니다. (0) | 2020.10.13 |
정수에 대한 나누기와 모듈로를 어떻게 계산할 수 있습니까? (0) | 2020.10.13 |
파이썬에서 문자열 목록을 결합하고 각 문자열을 따옴표로 묶습니다. (0) | 2020.10.13 |
JPA 주석에 다중 열 제약 조건을 도입하는 방법은 무엇입니까? (0) | 2020.10.13 |