使用QJson解析数据:
"ShelveId": {
"0": {
"BeBoardId": {
"0": {
"connectionId": "board0", .... followed by more data
我想比这样做更快地遍历这张表。所有 map 都是 QVariantMaps:
map_BeBoardId = map_ShelveId["0"].toMap();
map_BeBoardId = map_BeBoardId["BeBoardId"].toMap();
auto temp = map_BeBoardId["0"].toMap();
m_connectionId = temp["connectionId"].toString();
qDebug() << m_connectionId;
哪个有效并正确返回我的 connectionId“board0”。
我想做的是这样的:
map_BeBoardId = map_ShelveId["0"].toMap();
map_BeBoardId = map_BeBoardId["BeBoardId", "0"].toMap();
m_connectionId = map_BeBoardId["connectionId"].toString();
qDebug() << m_connectionId;
这会返回一个空的 connectionId。
不,我不能在这里使用列表,因为有时我们可能有一个搁置 ID 为“1”和“4”,具体取决于连接的内容。
最佳答案
对于疲惫的旅行者,经过各种尝试,这就是我想出的:
auto temp = map_BeBoardId.value("0").toMap().value("connectionId").toString();
有点冗长,是的,任何人都可以提出更好的解决方案然后发布。
关于c++ - 解析 2D QVariantMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25867076/