C#에서 중대형 JSON 파일을 효율적으로 구문 분석: Json.NET 방법에 대한 자세한 설명
C#에서 대규모 JSON 파일을 처리할 때 해당 파일을 배열에 직접 로드하면 성능 병목 현상이 발생할 수 있습니다. 이 기사에서는 Json.NET 라이브러리를 사용하는 효율적인 솔루션을 소개합니다.
Json.NET은 C#에서 널리 사용되는 JSON 구문 분석 라이브러리로, JSON 데이터를 읽고 구문 분석하는 편리하고 효율적인 방법을 제공합니다.
다음 예에서는 Json.NET을 사용하여 대용량 JSON 파일을 List<Item>
에 로드하는 방법을 보여줍니다.
<code class="language-csharp">public void LoadJson() { using (StreamReader r = new StreamReader("file.json")) { string json = r.ReadToEnd(); List<Item> items = JsonConvert.DeserializeObject<List<Item>>(json); } } public class Item { public int millis; public string stamp; public DateTime datetime; public string light; public float temp; public float vcc; }</code>
이 코드는 먼저 JSON 파일을 json
문자열로 읽은 다음 JsonConvert.DeserializeObject
를 사용하여 List<Item>
으로 역직렬화합니다. 목록의 각 요소는 속성이 JSON 노드에 해당하는 개체를 나타냅니다.
사용자 정의 클래스를 만들 필요가 없으며 Json.NET은 JSON 데이터 값을 동적으로 얻을 수도 있습니다. 예시는 다음과 같습니다.
<code class="language-csharp">dynamic array = JsonConvert.DeserializeObject(json); foreach (var item in array) { Console.WriteLine("{0} {1}", item.temp, item.vcc); }</code>
여기서 array
변수는 유형 확인 없이 해당 속성에 액세스할 수 있는 동적 개체입니다. 이 접근 방식은 특정 개체에 데이터를 저장할 필요가 없는 경우 더 편리합니다.
위 내용은 Json.NET은 어떻게 C#에서 큰 JSON 파일을 효율적으로 구문 분석할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!