设为首页 加入收藏

TOP

C++使用libxml解析XML文件(二)
2014-02-08 13:36:28 来源: 作者: 【 】 浏览:180
Tags:使用 libxml 解析 XML 文件

 

  attrPtr = attrPtr->next;

  }

  // Label

  xmlNodePtr childNodePtr = itemNodePtr->xmlChildrenNode;

  while (childNodePtr != NULL){

  int l=0,t=0,r=0,b=0;

  attrPtr = childNodePtr->properties;

  while(attrPtr != NULL){

  if (!xmlStrcmp(attrPtr->name, BAD_CAST "l")){

  xmlChar* szAttr = xmlGetProp(childNodePtr,BAD_CAST "l");

  l=atoi((char*)szAttr);

  xmlFree(szAttr);

  }

  if (!xmlStrcmp(attrPtr->name, BAD_CAST "t")){

  xmlChar* szAttr = xmlGetProp(childNodePtr,BAD_CAST "t");

  t=atoi((char*)szAttr);

  xmlFree(szAttr);

  }

  if (!xmlStrcmp(attrPtr->name, BAD_CAST "r")){

  xmlChar* szAttr = xmlGetProp(childNodePtr,BAD_CAST "r");

  r=atoi((char*)szAttr);

  xmlFree(szAttr);

  }

  if (!xmlStrcmp(attrPtr->name, BAD_CAST "b")){

  xmlChar* szAttr = xmlGetProp(childNodePtr,BAD_CAST "b");

  b=atoi((char*)szAttr);

  xmlFree(szAttr);

  }

  if (!xmlStrcmp(attrPtr->name, BAD_CAST "id")){

  xmlChar* szAttr = xmlGetProp(childNodePtr,BAD_CAST "id");

  peopleID=atoi((char*)szAttr);

  xmlFree(szAttr);

  }

  attrPtr = attrPtr->next;

  }

  if(!(l==0&&t==0&&b==0&&r==0)){

  rect.x=l;rect.y=t;rect.width=r-l;rect.height=b-t;

  labels[pair<int,int>(frameNum,peopleID)] = rect;

  //cout《"get label: "《l《" "《t《" "《r《" "《b《" "《" "《peopleID《endl;

  }

  childNodePtr = childNodePtr->next;

  }

  itemNodePtr = itemNodePtr->next;

  }

  xmlFreeDoc(doc);

  return filename;

  }

  用map的iterator输出:

  for(map<pair<int,int>,Rect >::iterator it=labels.begin();

  it!=labels.end();it++){

  cout《(*it)。first.first《" "《(*it)。first.second《" "

  《(*it)。second.x《" "《(*it)。second.y《" "

  《(*it)。second.width《" "《(*it)。second.height《endl;

  }

      

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++实现在线翻译之发声篇 下一篇code block与VC++下相对路径..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Libevent C++ 高并发 (2025-12-26 00:49:30)
·C++ dll 设计接口时 (2025-12-26 00:49:28)
·透彻理解 C 语言指针 (2025-12-26 00:22:52)
·C语言指针详解 (经典 (2025-12-26 00:22:49)
·C 指针 | 菜鸟教程 (2025-12-26 00:22:46)