[c#] JSON 직렬화
JSON (JavaScript Object Notation)은 데이터 교환을 위한 경량의 데이터 형식으로, C#에서는 JSON 데이터를 다루기 위해 JSON 직렬화 기능을 제공합니다. 이 기능을 사용하면 C# 객체를 JSON 문자열로 직렬화하거나, JSON 문자열을 다시 C# 객체로 역직렬화할 수 있습니다.
Newtonsoft.Json 라이브러리 설치
C#에서 JSON 직렬화를 위해 가장 널리 사용되는 라이브러리는 Newtonsoft.Json입니다. 이 라이브러리를 사용하려면 먼저 NuGet 패키지 관리자를 사용하여 Newtonsoft.Json 패키지를 프로젝트에 추가해야 합니다.
Install-Package Newtonsoft.Json
객체를 JSON 문자열로 직렬화
다음은 C#에서 JSON 직렬화를 수행하는 간단한 예제입니다.
using Newtonsoft.Json;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
public static void Main()
{
Person person = new Person { Name = "John Doe", Age = 30 };
string json = JsonConvert.SerializeObject(person);
Console.WriteLine(json);
}
}
위 예제에서는 Person
클래스의 인스턴스를 JsonConvert.SerializeObject
메서드를 사용하여 JSON 문자열로 직렬화하고, 이를 출력합니다.
JSON 문자열을 객체로 역직렬화
이제 JSON 문자열을 다시 C# 객체로 역직렬화하는 방법을 살펴보겠습니다.
string json = @"{'Name':'Jane Smith','Age':25}";
Person person = JsonConvert.DeserializeObject<Person>(json);
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
위 예제에서는 JsonConvert.DeserializeObject
메서드를 사용하여 JSON 문자열을 Person
객체로 역직렬화하고, 객체의 속성을 출력합니다.
JSON 직렬화와 역직렬화를 통해 C#에서는 간편하게 JSON 데이터를 다룰 수 있습니다.
JSON 데이터를 C# 객체로 변환하거나, C# 객체를 JSON 데이터로 변환하는 과정은 Newtonsoft.Json 라이브러리를 활용하여 간단하게 처리할 수 있습니다.