问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

利用tinyxml如何递归遍历kml所有节点

发布网友 发布时间:2024-03-14 06:15

我来回答

2个回答

热心网友 时间:2024-07-20 14:27

#include <stdio.h>
#include <stdlib.h>
#include "tinyxml.h"

char * ShowNodeInfo(TiXmlElement *pCurrentNode);

int _tmain(int argc, _TCHAR* argv[])
{
TiXmlDocument aDoc("test.xml");

if ( ! aDoc.LoadFile() )
{
perror("打开test.xml失败:");
return -1;
}

TiXmlElement *pRoot = aDoc.RootElement();
TiXmlElement *pWork = pRoot;

ShowNodeInfo(pWork);

getchar();
return 0;
}

//递归访问
char * ShowNodeInfo(TiXmlElement *pCurrentNode)
{
//为NULL时表示一次递归完成
if ( NULL == pCurrentNode )
{
return "";
}
else if ( pCurrentNode->NoChildren() )//没有子结点则是最底层的结点
{
pCurrentNode->Print(stdout,0);
printf("\n");
ShowNodeInfo(NULL);
}
else if( ! pCurrentNode->NoChildren() )//有子结点则每个子结点都递归处理
{
TiXmlElement * pChilds = pCurrentNode->FirstChildElement();//获取第一个子结点

ShowNodeInfo(pChilds);//递归子结点
pChilds = pChilds->NextSiblingElement();//获取刚显示的结点的同级下一个结点
while ( NULL != pChilds )//递归处理此结点下的所有结点
{
ShowNodeInfo(pChilds);
pChilds = pChilds->NextSiblingElement();
}

ShowNodeInfo(NULL);//此结点所有子结点都处理完毕
}
}

热心网友 时间:2024-07-20 14:24

这个csdn上不是挺多资料的吗?见参考资料
手册也有。《TinyXML Tutorial 中文指南》
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
赵玉平名家论坛 赵玉平人物经历 杭州市汽车西站 现在能提前几天售票啊? 请问杭州西站汽车票可以提前几天买? 杭州汽车西站在节假日的时候需要提前买票的吗 散步有助于减肥吗 魑瑟忝箜莫尘读什么 端午送什么 端午节家里要摆放什么东西 龙舟是如何制作的? 荣耀手机天气怎么设置成透明的? 求一tinyxml使用方法,VS2008编写的,编译通过200分。 本领的引证解释本领的引证解释是什么 ...收益率与资本充足率哪个更反映经营状况?比较合理的值是多少?_百度... 我国内流河水文特征有哪些呢 医保中间断交怎么办 求初音圆周率完整版MP3=W= 圆周率洗脑歌 mp3 初音圆周率mp3 下载 最好是10000位的,不要改版的 1263279530@qq.com... 求初音未来 圆周率10000位下载 mp3格式 千石抚子圆周率MP3,大神给我吧!!! 简单做炒酸奶的方法有哪些? 水果炒酸奶的家常做法是怎样的? 新款福克斯三缸发动机抖动吗 我对房产销售一窍不通,我怕面试都不通过,怎么办? 房地产销售面试难不难? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 潍坊有什么名胜古迹84 潍坊有哪些景区17 潍城区的风景名胜 要定亲了,需要定亲礼,婆婆直接把钱打到卡上了,让我们两自己挑自己买,用... 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 退休了之后,退休员工可以买什么保险? 轮台火车站开往阿克苏火车站的列车有几列? 库尔勒到阿克苏在那↑站发车 怎么将Systrace文件打开并进行分析 泡菜坛里水不够可以再加水加盐吗?27 竹笋放泡菜坛可以去花?2 空调遥控器图标都表示什么太阳关不掉? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... ...做的是信用证,信用证上也没显示订单号,要改单吗?改单费要多少... 提单草稿件 更改 要交改单费吗? 欧洲客户船公司报了ENS后,还没正式出提单,改单也要给改单费吗? ...现需要更改舱单里的毛重,这种会产生改单费吗? 西门子冰箱质保多久?西门子冰箱怎么样? 这个玉佩是什么年代的 什么材质 男的,离异医生,孩子前妻带,人很小气,没有责任心,不爱孩子,对前妻孩子都... 是济宁大还是泰安大 两能400的电焊机连接成一台电流会大的吗?3 ...我要证明你是我的。谁的我不知道,有一次偶然的机会听到