我是 C++ 的新手,在处理 json 文件时遇到了问题。我正在使用 Xcode(6.4 版)。例如,我的 json 文件的格式与此类似:
[
{
"assignmentName": "Physics 1",
"dueDate": "2015-10-15T20:11:20Z",
"priority": "High",
},
{
"assignmentName": "Research Paper",
"dueDate": "2015-11-18T00:40:25Z",
"priority": "Low"
}
]
我尝试做的一个例子是编写代码来查找我的 json 文件中的信息。如果我想打印 2015 年 11 月 11 日到期的作业的名称,我希望我的输出是“研究论文”。
过去几天我一直在研究这个问题,但一直卡壳。我已经查看了 http://www.json.org并查看了 C++ 下列出的 json 解析器。我曾尝试与他们合作,但 (1) 他们的代码对我来说太复杂了(我不理解语法,即使在阅读了他们的示例之后)或 (2) 我被要求使用其他库.在查看了 C++ 列表下的每个解析器之后,json(https://github.com/nlohmann/json)似乎是我使用的最简单的解析器,但我仍然感到很迷茫。
我正在寻找简单的东西。我想要做的就是输出我在 json 文件中调用的任何变量的值(调用“assignmentName”,打印“Physics 1”)。
通过与一位 friend 交谈并模糊地试图理解解析器,似乎为了让我在我的 json 文件中获取某个变量的值,我需要实际将我的 json 文件的内容粘贴到我的 Xcode 项目中.这是真的吗?
如果有人可以指导我使用这些解析器的更好的解析器、更好的方法或某种语法字典,我们将不胜感激!
最佳答案
有了你提到的json库,相关代码应该是
#include "json.hpp"
#include <iostream>
using json = nlohmann::json;
// ... In some method, e.g. main...
std::ifstream file = {"yourfilename.json"};
json obj;
file >> obj;
std::cout << obj[0]["dueDate"]; // Debug output
// End of code
关于c++ - C++中json文件的简单输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32939253/