libjson으로 array 표현하기
2011. 6. 9. 10:12 in Research/Etc

libjson으로 array 표현하는 방법을 알아봅니다.
- JSONNODE* root = NULL;
- JSONNODE* array = NULL;
- JSONNODE* node1 = NULL;
- JSONNODE* node2 = NULL;
- LPTSTR txt = NULL;
- root = json_new(JSON_NODE);
- array = json_new(JSON_ARRAY);
- node1 = json_new(JSON_NODE);
- node2 = json_new(JSON_NODE);
- json_push_back(node1, json_new_i(TEXT("val1"), 1));
- json_push_back(node2, json_new_i(TEXT("val2"), 2));
- json_push_back(array, node1);
- json_push_back(array, node2);
- json_set_name(array, TEXT("list"));
- json_push_back(root, json_new_i(TEXT("ver"), 100));
- json_push_back(root, array);
- txt = json_write_formatted(root);
- // 사용
- json_free(txt);
- json_delete(root);
이렇게 되면 아래와 같은 결과로 표현됩니다.
- {
- "ver":100,
- "list":[
- {"val1":1},
- {"val2":2}
- ]
- }
와 같이 됩니다.
즉, list object로 array 처럼 사용할 수 있습니다.
물론, array이기 때문에, 내부 node의 schema는 동일(즉, "val1")해야 되지만,
위 코드는 테스트를 위함이기 때문에, val1 val2 와 같이 되어 있습니다.
'Research > Etc' 카테고리의 다른 글
압축 알고리즘 비교 (zlib / lz4 / snappy), snappy의 visual studio(vc++) 컴파일 하기 (6) | 2013.03.20 |
---|---|
JSON array를 libjson으로 파싱하여 정보 구하기 (3) | 2011.07.22 |
Google Code API(OAuth인증 & Google Calendar)를 VC9.0(liboauth)에서 구현 (0) | 2011.04.20 |
oauth+openssl+curl 삼종 세트 VC에서 빌드(build)하기 (재배포팩 필요없이) (10) | 2011.03.21 |
OpenSSL VC9.0에서 빌드하기 (3) | 2011.03.10 |