C를 사용한 JSON 해석
C에서 JSON을 해석할 수 있는 좋은 방법을 찾고 있습니다.큰 라이브러리 같은 것은 필요 없습니다.최소한의 기능을 갖춘 작고 가벼운 것을 원합니다만, 좋은 문서가 필요합니다.
누구 저 좀 가리켜 줄 사람 없나요?
Json은 처음에는 큰 언어가 아니기 때문에 라이브러리가 작을 가능성이 있습니다(적어도 XML 라이브러리보다 작습니다).
Json.org에는 수많은 C 라이브러리가 링크되어 있습니다.그 중 하나가 당신에게 잘 맞을지도 몰라요.
cJSON은 API가 적절하고 크기가 작다(2개의 파일, 최대 700줄).처음에 본 JSON 파서들은 엄청 컸는데...JSON을 해석하고 싶어서요
편집: 수년간 cJSON이 개선되었습니다.
NXJSON은 풀기능이지만 매우 작은(최대 400줄의 코드) JSON 파서로 사용하기 쉽습니다.
const nx_json* json=nx_json_parse_utf8(code);
printf("hello=%s\n", nx_json_get(json, "hello")->text_value);
const nx_json* arr=nx_json_get(json, "my-array");
int i;
for (i=0; i<arr->length; i++) {
const nx_json* item=nx_json_item(arr, i);
printf("arr[%d]=(%d) %ld\n", i, (int)item->type, item->int_value);
}
nx_json_free(json);
Jsmn은 매우 미니멀리즘적이며 사용할 수 있는 함수는 2개뿐입니다.
https://github.com/zserge/jsmn
Jansson을 볼 수 있습니다.
이 웹 사이트에는 다음과 같이 기술되어 있습니다.Janson은 JSON 데이터를 인코딩, 디코딩 및 조작하기 위한 C 라이브러리입니다.특징:
- 심플하고 직관적인 API 및 데이터 모델
- JSON으로 인코딩 및 디코딩할 수 있습니다.
- 포괄적인 문서
- 다른 라이브러리에 의존하지 않음
- Unicode 완전 지원(UTF-8)
- 광범위한 테스트 스위트
임의의 JSON 구조를 해석해야 합니까?아니면 어플리케이션 고유의 데이터만 해석해야 합니까?후자의 경우 JSON 키를 값에 매핑하는 해시 테이블/맵 구조를 생성하지 않아도 되므로 훨씬 가볍고 효율적입니다.대신 데이터를 구조 필드 등에 직접 저장할 수 있습니다.
JSON-C를 작업 프로젝트에 사용했는데 추천하고 싶습니다.경량이며 오픈 라이선스로 출시됩니다.
배포에는 설명서가 포함되어 있습니다.기본적으로는*_add
JSON 객체를 생성하는 함수, 동등한 기능*_put
메모리 해방 함수 및 유형 및 출력 객체를 문자열 표현으로 변환하는 유틸리티 함수입니다.
라이선스를 통해 프로젝트에 포함할 수 있습니다.이와 같이 JSON-C를 메인 빌드와 링크된 정적 라이브러리로 컴파일했습니다.이렇게 하면 Xcode 설치 이외의 종속성에 대해 걱정할 필요가 없습니다.
또한 JSON-C는 OS X(x86 Intel) 및 Linux(x86 Intel) 환경에서 문제 없이 구축되었습니다.프로젝트를 휴대할 필요가 있는 경우, 이것은 좋은 시작입니다.
언급URL : https://stackoverflow.com/questions/6673936/parsing-json-using-c
'programing' 카테고리의 다른 글
PHP를 사용하여 클라이언트 IP 주소 가져오기 (0) | 2022.10.25 |
---|---|
mysql - 빈 테이블에 존재하지 않는 위치에 선택 항목 삽입 (0) | 2022.10.25 |
기능 조기 종료? (0) | 2022.10.25 |
구성 요소가 로드될 때 데이터를 검색하는 방법 (0) | 2022.10.25 |
MySQL - 여러 테이블의 관련 행 수 (0) | 2022.10.25 |