栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

遍历JsonCpp中的对象

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

遍历JsonCpp中的对象

您可能会遇到一些错误,这些错误似乎与您对递归或JSON的key->
value性质没有很好的了解以及如何与所使用的库相关联。我根本没有测试过此代码,但它应该可以更好地工作。

void CDriverConfigurator::PrintJSonValue( const Json::Value &val ){    if( val.isString() ) {        printf( "string(%s)", val.asString().c_str() );     } else if( val.isBool() ) {        printf( "bool(%d)", val.asBool() );     } else if( val.isInt() ) {        printf( "int(%d)", val.asInt() );     } else if( val.isUInt() ) {        printf( "uint(%u)", val.asUInt() );     } else if( val.isDouble() ) {        printf( "double(%f)", val.asDouble() );     }    else     {        printf( "unknown type=[%d]", val.type() );     }}bool CDriverConfigurator::PrintJSonTree( const Json::Value &root, unsigned short depth ) {    depth += 1;    printf( " {type=[%d], size=%d}", root.type(), root.size() );    if( root.size() > 0 ) {        printf("n");        for( Json::Value::const_iterator itr = root.begin() ; itr != root.end() ; itr++ ) { // Print depth.  for( int tab = 0 ; tab < depth; tab++) {    printf("-");  } printf(" subvalue("); PrintJSonValue(itr.key()); printf(") -"); PrintJSonTree( *itr, depth);         }        return true;    } else {        printf(" ");        PrintJSonValue(root);        printf( "n" );     }    return true;}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/404203.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号