C++:
Робота з JSON
Як це зробити:
У C++ немає вбудованої підтримки для JSON, але сторонні бібліотеки, як-от nlohmann/json, роблять це простим. Ось як можна її використовувати для базових завдань:
Перш за все, переконайтеся, що у вас встановлена бібліотека. Якщо ви використовуєте менеджер пакунків, такий як vcpkg або Conan, ви легко можете додати nlohmann/json
до свого проєкту.
Парсинг JSON з рядка
#include <iostream>
#include <nlohmann/json.hpp>
int main() {
// JSON дані як рядок
std::string jsonData = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
// Парсинг рядка JSON
auto jsonObject = nlohmann::json::parse(jsonData);
// Доступ до даних
std::cout << "Ім'я: " << jsonObject["name"] << "\n"
<< "Вік: " << jsonObject["age"] << "\n"
<< "Місто: " << jsonObject["city"] << std::endl;
return 0;
}
Приклад виводу:
Ім'я: John
Вік: 30
Місто: New York
Генерація JSON
Створення даних JSON є також простим; вам лише потрібно присвоїти значення об’єкту nlohmann::json
.
#include <nlohmann/json.hpp>
#include <iostream>
int main() {
// Створення об'єкта JSON
nlohmann::json jsonObject;
jsonObject["name"] = "Jane";
jsonObject["age"] = 25;
jsonObject["city"] = "Los Angeles";
// Конвертація об'єкта JSON у рядок та його друк
std::string jsonString = jsonObject.dump(4); // Аргумент 4 для красивого виводу
std::cout << jsonString << std::endl;
return 0;
}
Приклад виводу:
{
"name": "Jane",
"age": 25,
"city": "Los Angeles"
}
Ці приклади демонструють основну функціональність роботи з JSON в C++ за допомогою бібліотеки nlohmann/json
. З цими основами ви можете парсити та генерувати JSON для різних додатків, від файлів конфігурації до обміну даними в мережевих додатках.