如何读取 JSON 具有 C++ 参数值的文件
How to read JSON file which has values with parameters in C++
我正在尝试使用 C++ 读取 JSON 文件。在文件中我有键值对。在值中,我传递了具有不同参数的值的数量。
这种做法是否正确?请问是否需要修改?
方法 1:
"test_details" : {
"testd" : "1",
"testvalue":["one", "two(param1, para2)", "three(param1, param2, param3)"]
}
方法 2:
"test_details" : {
"testd" : "1",
"testvalue":"one"
},
{
"testd" : "2",
"testvalue":"two(param1, para2)"
},
{
"testd" : "3",
"testvalue":"three(param1, param2, param3)"
}
谢谢
正确的解析方法是获取键“testvalue”下的对象
您必须将其解析为 vector<string>
是的,可以将 json 解析为一个对象。我非常喜欢第二种方法。假设你采用第二种方法,你可以创建一个 TestCase class 看起来像:
class TestCase {
public:
std::string id;
std::string value;
// std::vector<std::string> values; // this will hold multiple values for one test case
}
class TestDetails { public: std::vector<TestCase> };
这个 class 的对象可以通过反序列化您的 json 负载来构造。反之得到json序列化结果。
检查此 library 以在 C++ 中解析 json。 json解析的解决方案很多,我链接的库是个人喜好。
我正在尝试使用 C++ 读取 JSON 文件。在文件中我有键值对。在值中,我传递了具有不同参数的值的数量。
这种做法是否正确?请问是否需要修改?
方法 1:
"test_details" : {
"testd" : "1",
"testvalue":["one", "two(param1, para2)", "three(param1, param2, param3)"]
}
方法 2:
"test_details" : {
"testd" : "1",
"testvalue":"one"
},
{
"testd" : "2",
"testvalue":"two(param1, para2)"
},
{
"testd" : "3",
"testvalue":"three(param1, param2, param3)"
}
谢谢
正确的解析方法是获取键“testvalue”下的对象
您必须将其解析为 vector<string>
是的,可以将 json 解析为一个对象。我非常喜欢第二种方法。假设你采用第二种方法,你可以创建一个 TestCase class 看起来像:
class TestCase {
public:
std::string id;
std::string value;
// std::vector<std::string> values; // this will hold multiple values for one test case
}
class TestDetails { public: std::vector<TestCase> };
这个 class 的对象可以通过反序列化您的 json 负载来构造。反之得到json序列化结果。
检查此 library 以在 C++ 中解析 json。 json解析的解决方案很多,我链接的库是个人喜好。