hv::Json 字符串数组 转为 std::vector<std::string>
时间: 2023-08-15 09:07:21 浏览: 217
在libhv中,可以通过以下方法将hv::Json中的字符串数组转换为std::vector<std::string>:
```cpp
#include <iostream>
#include "hv/json.h"
int main() {
std::string jsonString = R"({
"array": [
"hello",
"world",
"example"
]
})";
hv::Json json;
json.parse(jsonString);
std::vector<std::string> strArray;
const hv::Json& jsonArray = json["array"];
if (jsonArray.isArray()) {
for (const hv::Json& item : jsonArray) {
if (item.isString()) {
strArray.push_back(item.asString());
}
}
}
// 打印输出字符串数组内容
for (const std::string& str : strArray) {
std::cout << str << std::endl;
}
return 0;
}
```
上述示例中,首先定义了一个JSON字符串 `jsonString`,其中包含一个名为 `array` 的字符串数组。然后,使用 `hv::Json` 对象解析该JSON字符串,并获取 `array` 字段的值。
接下来,通过判断 `jsonArray` 是否为数组类型,并遍历该数组,将其中的字符串元素添加到 `strArray` 中。
最后,通过循环打印输出 `strArray` 中的字符串元素。
输出结果将是:
```
hello
world
example
```
你可以根据实际需求修改和扩展这个示例代码。
阅读全文