본문 바로가기

Programming

cJSON Programming


Project에서 json을 사용하기로 하였습니다.

그리하여 어떤 json parser를 사용할까 하다가 아래의 cjson parser 를 사용하기로 하였습니다.


http://sourceforge.net/projects/cjson/


이유는 가장 간단하고 사용하기 편리한 듯 하였기 때문입니다.

개인적으로 simple is the best 라는 믿음이 아주 강하기 때문입니다.


아시다시피 json은 간단히 key = value 라는 구조를 가지고 있습니다.


cJSON.h 파일을 열어보시면 다음과 같이 매크로들을 확인할 수가 있습니다.

아마 아래 미리 정의된 매크로들을 주로 사용할 것입니다.

 

/* Macros for creating things quickly. */

#define cJSON_AddNullToObject(object,name)              cJSON_AddItemToObject(object, name, cJSON_CreateNull())

#define cJSON_AddTrueToObject(object,name)              cJSON_AddItemToObject(object, name, cJSON_CreateTrue())

#define cJSON_AddFalseToObject(object,name)             cJSON_AddItemToObject(object, name, cJSON_CreateFalse())

#define cJSON_AddBoolToObject(object,name,b)    cJSON_AddItemToObject(object, name, cJSON_CreateBool(b))

#define cJSON_AddNumberToObject(object,name,n)  cJSON_AddItemToObject(object, name, cJSON_CreateNumber(n))

#define cJSON_AddStringToObject(object,name,s)  cJSON_AddItemToObject(object, name, cJSON_CreateString(s))



json도 엄연히 데이터 이므로 전체적인 데이터 구조를 미리 생각해야 합니다.

뭔말이즉슨 xml를 사용할때 스키마 구조를 먼저 잡듯이 비슷하다고 보시면 됩니다.


샘플을 보시면 바로 이해가 될것입니다.

좀더 자세히 설명하기에는 그다지 설명할 것이 너무 없어서...

다시 업데이트 하도록 하겠습니다.

'Programming' 카테고리의 다른 글

git commit message guideline  (0) 2019.01.07
shell script #1  (0) 2018.06.10
scons 개념 및 사용법  (1) 2015.04.08
DHCP Probe 소스 코드  (0) 2014.11.29
현재 네트워크에서 DHCP 서버가 동작되고 있는지 확인?  (0) 2014.08.18