Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Json в строку и записать в вектор с++

Радик Маратович Ученик (3), на голосовании 3 месяца назад
помогите перевести JSON в вектор string
{
"config": {
"name": "SearchEngine",
"version": "0.1",
"max_responses": 5
}
Голосование за лучший ответ
Минирсику писику Гуру (2893) 4 месяца назад
LLM served by Perplexity Labs
В C++ можно использовать библиотеку nlohmann/json для работы с JSON. Вот пример кода, который преобразует JSON-строку в вектор строк:
 #include  
#include
#include

int main() {
std::string jsonStr = R"({
"config": {
"name": "SearchEngine",
"version": "0.1",
"max_responses": 5
}
})";

nlohmann::json jsonData = nlohmann::json::parse(jsonStr);

std::vector vec;

if (jsonData.contains("config")) {
nlohmann::json config = jsonData["config"];
vec.push_back("name: " + config["name"].get());
vec.push_back("version: " + config["version"].get());
vec.push_back("max_responses: " + std::to_string(config["max_responses"].get()));
}

for (const auto& str : vec) {
std::cout << str << std::endl;
}

return 0;
}
В этом примере мы сначала парсим JSON-строку с помощью nlohmann::json::parse(). Затем мы извлекаем объект config из JSON-объекта и добавляем его свойства в вектор строк vec.
Вектор vec будет содержать следующие строки:
 name: SearchEngine 
version: 0.1
max_responses: 5
Вы можете изменить формат строк в векторе в соответствии с вашими потребностями.
Обратите внимание, что вам нужно добавить библиотеку nlohmann/json в ваш проект и включить ее в файлы заголовков.
Радик МаратовичУченик (3) 4 месяца назад
большое спасибо
Похожие вопросы