728x90
반응형
SMALL
JSON의 정의와 간단한 사용법에 대한 정리(+C#으로 작성한 예제)
JSON
JavaScript Object Notation
데이터를 다른 플랫폼에서 해석 가능한 형식으로 전달할때 사용하는 경량의 DATA-교환 형식
주로 클라이언트<-> 서버간 HTTP 통신을 위해 사용
JSON 데이터 유형
- String : 유니코드 문자열로 구성
{
"Name": "0so0"
}
- Numebr : 실수, 정수
{
"Index": 1,
"Temperature" : 37.5,
}
- Bool : true, false
{
"Status" : true
}
JSON 형식
{
"Visit list": [
{
"Index": 1,
"Name": "0so0",
"Temperature" : 37.5,
"Status" : true
},
{
"Index": 1,
"Name": "John",
"Temperature" : 38.2,
"Status" : false
}
]
}
- Pair : key-value 형식의 쌍
"Index": 1,
"Name": "0so0",
"Temperature" : 37.5,
"Status" : true
- Array : 순서가 지정된 배열로 문자열, 숫자, 객체, 배열, bool, null 유형으로 구성될 수 있음
"Visit list": [
{...},
{...}
]
- Object : {} 사이에 삽입되어있는 한쌍의 값
{
"Index": 1,
"Name": "0so0",
"Temperature" : 37.5,
"Status" : true
}
.NET JSON 직렬화/역직렬화
C# 으로 작성한 JSON 직렬화 예시
using System;
using System.Text.Json;
namespace JsonSerializationExample
{
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
// 객체 생성
Person person = new Person
{
FirstName = "John",
LastName = "Doe",
Age = 30
};
// JSON 직렬화
string jsonString = JsonSerializer.Serialize(person);
Console.WriteLine(jsonString);
}
}
}
C# 으로 작성한 JSON 역직렬화 예시
/ JSON 문자열
string json = "{\"FirstName\":\"Jane\",\"LastName\":\"Smith\",\"Age\":25}";
// JSON 역직렬화
Person deserializedPerson = JsonSerializer.Deserialize<Person>(json);
Console.WriteLine($"Name: {deserializedPerson.FirstName} {deserializedPerson.LastName}, Age: {deserializedPerson.Age}");
728x90
반응형
LIST
'Network' 카테고리의 다른 글
[Network] REST API (0) | 2023.09.20 |
---|---|
[Network] 프로토콜 & IP (0) | 2023.09.06 |
[Network] TCP/UDP 특징 (0) | 2023.07.03 |