rapidjson Expression:: IsObject()错误问题

arucied379 2017-03-07 11:12:50
std::string jsonStr;
//jsonStr 是:(获取方式不赘述)
[[{"schemaId":594173246,"updateTime":"Jan 9, 2017 12:00:00 AM","reviser":"anonymous","path":"/808695405","id":808695405,"name":"凸弯边(HB 0-17-2003)","type":6,"parentId":594173246}],[{"schemaId":594173246,"updateTime":"Jan 9, 2017 12:00:00 AM","reviser":"anonymous","path":"/808695405","id":808695405,"name":"凸弯边(HB 0-17-2003)","type":6,"parentId":594173246}]]

rapidjson::Document doc;
doc.Parse(jsonStr.c_str ());

if (doc.HasParseError()) return;

for(Value::ConstValueIterator itr = doc.Begin(); itr != doc.End(); ++itr)//这里报错
{
const Value& obj = *itr;
for(Value::ConstMemberIterator it = obj.MemberBegin(); it != obj.MemberEnd(); ++it){
if(it->value.IsString()){
Config::ShowMsg(it->name.GetString());
Config::ShowMsg(it->value.GetString());
}



错误如图所示 只要一获取Json串数组的值 就出错
求赐教!!!
...全文
1328 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
月xxxxx 2019-02-18
  • 打赏
  • 举报
回复
json文件有错误!!
赵4老师 2017-06-23
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处,看不懂时双击下一行,直到能看懂为止
鱼弦 2017-06-23
  • 打赏
  • 举报
回复
帮顶,我这里也报错
ASP函数 IsNull()   FUNCTION: 判断一对象是否为空,返回布尔值.   SYNTAX: IsNull(expression)   ARGUMENTS:   EXAMPLE: $#@60;%       Dim i       response.write IsNull(i)       %>   RESULT: False IsNumeric()   FUNCTION: 判断一对象是否为数字,返回布尔值.   SYNTAX: IsNumeric(expression)   ARGUMENTS:   EXAMPLE: $#@60;%        i = "345"        response.write IsNumeric(i)       %>   RESULT: True 就算数字加了引号,ASP还是认为它是数字。 IsObject()   FUNCTION: 判断一对象是否为对象,返回布尔值.   SYNTAX: IsObject(expression)   ARGUMENTS:   EXAMPLE: $#@60;%        Set con = Server.CreateObject("ADODB.Connection")        response.write IsObject(con)       %>   RESULT: True LBound()   FUNCTION: 返回指定数组维的最小可用下标.   SYNTAX: Lbound(arrayname [, dimension])   ARGUMENTS: ; dimension 指明要返回哪一维下界的整数。使用 1 表示第一维,2 表示第二维,以此类推。如果省略          dimension 参数,默认值为 1.   EXAMPLE: $#@60;%        i = Array("Monday","Tuesday","Wednesday")        response.write LBound(i)        %>   RESULT: 0 LCase()   FUNCTION: 返回字符串的小写形式   SYNTAX: Lcase(string)   ARGUMENTS: string is any valid string expression.   EXAMPLE: $#@60;%        strTest = "This is a test!"        response.write LCase(strTest)       %>   RESULT: this is a test! Left() <   FUNCTION: 返回字符串左边第length个字符以前的字符(含第length个字符).   SYNTAX: Left(string, length)   ARGUMENTS:   EXAMPLE: $#@60;%       strTest = "This is a test!"       response.write Left(strTest, 3)       %>   RESULT: Thi Len()   FUNCTION: 返回字符串的长度.   SYNTAX: Len(string | varName)   ARGUMENTS:   EXAMPLE: $#@60;%        strTest = "This is a test!"        response.write Len(strTest)       %>   RESULT: 15 LTrim()   FUNCTION: 去掉字符串左边的空格.   SYNTAX: LTrim(string)   ARGUMENTS:   EXAMPLE: $#@60;%       strTest = " This is a test!"       response.write LTrim(strTest)       %>   RESULT: This is a test! Mid()   FUNCTION: 返回特定长度的字符串(从start开始,长度为length).   SYNTAX: Mid(string, start [, length])   ARGUMENTS:   EXAMPLE: $#@60;%        strTest = "This is a test! Today is Monday."        response.write Mid(strTest, 17, 5)       %>   RESULT: Today

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧