在迭代JSON ptree時,我需要一些幫助。這是結構。迭代JSON ptree在提升中
{"drives": [{"busy": false, "eof": false, "density": 88 }]}
我想要做的是打印鍵和值例如。忙=假。我試過下面的代碼,但沒有輸出。
那麼如何打印密鑰?
在此先感謝您的幫助。
在迭代JSON ptree時,我需要一些幫助。這是結構。迭代JSON ptree在提升中
{"drives": [{"busy": false, "eof": false, "density": 88 }]}
我想要做的是打印鍵和值例如。忙=假。我試過下面的代碼,但沒有輸出。
那麼如何打印密鑰?
在此先感謝您的幫助。
我通過一些舊的代碼去了,我找到了辦法
BOOST_FOREACH(ptree::value_type &v, pt.get_child("drives"))
{
for(auto iter = v.second.begin(); iter!= v.second.end(); ++iter)
{
std::cout << iter->first << " : " << iter->second.get_value<std::string>() << std::endl;
}
}
你只需要遍歷「驅動器」,如果你有一個以上的「驅動器」,並在你的JSON例子中,你不有。
在您的代碼中,您嘗試打印v.first和v.data(),但這兩個不包含您認爲他們擁有的數據。
v.first應該持有的鍵名 「鍵名」:{ 「忙」:假的, 「EOF」:假的, 「密度」:88}
它不存在,因爲這值是數組的一部分。
v.data()(如果我沒有弄錯)持有關鍵值:這是一個內部演示文稿,不能用這種方式打印。
我真的認爲你應該嘗試使用不同的JSON框架。
對不起,我沒有任何建設性的意見,但使用JSON和XML的property_tree後,我真的認爲你最好用一個爲閱讀JSON(或XML)而編寫的框架,而不是一個爲了概括閱讀JSON/XML和ini。 – ManicQin