1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/konghy-cparsejson

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 2.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 09.03.2025 11:56 33c1f68

Обработка JSON данных с использованием C

Для обработки JSON данных в этом примере используется библиотека json-c. На системах Ubuntu и её производных можно установить эту библиотеку следующей командой:

$ sudo apt-get install libjson-c-dev

Если прямое установление невозможно, то можно скачать исходный код с GitHub и скомпилировать его. Адрес проекта на GitHub: http://github.com/json-c/json-c

Компиляция приложения

При компиляции приложений, использующих библиотеку json-c, следует указывать путь к заголовочным файлам и библиотекам, как показано ниже:

$ gcc test2.c -I/usr/include/json-c -ljson-c -g -o psjson

Для просмотра соответствующих опций компиляции можно использовать следующие команды:

$ pkg-config --cflags json-c

$ pkg-config --libs json-c

Описание часто используемых функций

/* Типы объектов JSON: */
json_type_object, "ключ/значение" пары
json_type_boolean,
json_type_double,
json_type_int,
json_type_array, "значения" коллекция
json_type_string

json_object_to_file(filepath, json_object); // Сохраняет json_object в файл
json_object_from_file(filepath);            // Читает json_object из файла

json_object_new_object();                   // Создаёт новый JSON объект { }
json_object_object_add(json_object, "name", json_object_value); // Добавляет {"name": "value"}
json_object_object_del(json_object, "name"); // Удаляет ключ значение
json_object_object_foreach(json_object, key, val)
{
    printf("\t%s: %s\n", key, json_object_to_json_string(val));
}
``````c
json_object_new_array();                    // Создаёт []
json_object_array_length(struct json_object *obj); // Возвращает длину JSON массива
json_object_array_add(json_object, json_object_new_string("значение")); // Добавляет значение
json_object_get_array_idx(json_object, i);  // Получает i-ый элемент массива
```json_object_new_int(0);
json_object_new_string("строка");
json_object_new_boolean(0);

json_object_get_type(struct json_object *this); // Получает тип JSON объекта
json_object_is_type(struct json_object *this, enum json_type type); // Проверяет тип JSON объекта

json_object_to_json_string(json_object);     // Преобразует JSON объект в строку

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/konghy-cparsejson.git
git@api.gitlife.ru:oschina-mirror/konghy-cparsejson.git
oschina-mirror
konghy-cparsejson
konghy-cparsejson
master