TinyXML使用中遇到的一个小困惑
2011-03-20 15:27
162 查看
情况1:
<item name="B" url="http://www.netskycn.com" id="1" ></item>
情况2:
<item name="B" url="http://www.netskycn.com" id="1">fdafda</item>
在我们的理解中情况1和情况2应该属于同一种的节点层次。但是在TinyXML中却不同
首先它们都是 TiXmlNode::TINYXML_ELEMENT 类型的节点。但是
情况1 调用 NoChildren() 方法的时候返回ture,
情况2 调用 NoChildren() 方法的时候返回false. 它还有一个 TiXmlNode::TINYXML_TEXT 类型的子节点
使用的时候不小心很容易给我们带来困惑
例如:
TixmlNode *pNode 指向情况1
cout << pNode->value() << endl; //输出的是 item
if(pNode->NoChildren())
{
//进入到这里
}
TixmlNode *pNode 指向情况2
cout << pNode->value() << endl; //输出的是 item
if(pNode->NoChildren())
{
//不进入到这里
}
<item name="B" url="http://www.netskycn.com" id="1" ></item>
情况2:
<item name="B" url="http://www.netskycn.com" id="1">fdafda</item>
在我们的理解中情况1和情况2应该属于同一种的节点层次。但是在TinyXML中却不同
首先它们都是 TiXmlNode::TINYXML_ELEMENT 类型的节点。但是
情况1 调用 NoChildren() 方法的时候返回ture,
情况2 调用 NoChildren() 方法的时候返回false. 它还有一个 TiXmlNode::TINYXML_TEXT 类型的子节点
使用的时候不小心很容易给我们带来困惑
例如:
TixmlNode *pNode 指向情况1
cout << pNode->value() << endl; //输出的是 item
if(pNode->NoChildren())
{
//进入到这里
}
TixmlNode *pNode 指向情况2
cout << pNode->value() << endl; //输出的是 item
if(pNode->NoChildren())
{
//不进入到这里
}
相关文章推荐
- Chrome 下,重复使用 XMLHttpRequest进行Post数据时,遇到一个奇怪的问题
- 使用XmlDocument.SelectNodes遍历xml元素遇到的一个XPathException
- 初学Flex,在使用Webservice时遇到Xml数据绑定的一个问题,试了N个方案,均没解决。
- C++它tinyXML使用
- 【android】strings.xml中要注意的一个小问题和使用strings.xml中的资源时要注意的小问题
- 自己写的一个ant使用build.xml
- TinyXML:一个优秀的C++ XML解析器
- TabLayout使用的时候会遇到的一个bug
- XML Parser(Tinyxml)的使用
- 使用CXF遇到的一个问题
- Android中自定义属性的使用------res/values文件下定义一个attrs.xml
- android 自定义属性的使用一、在res/values文件下定义一个attrs.xml文件,代码如下
- C++ tinyXML使用
- 记录在eclipse中使用ant遇到到的一个小问题
- 使用Android studio转换Jar包时,遇到的一个问题Could not find tools.jar.
- 在android String resource中使用&#160;时的遇到的困惑
- 使用Konsole时遇到的一个小问题
- TinyXML使用解析(一)——文件的建立
- MySQL使用中遇到的一个问题
- 将所有程序设置XML集中到一个单独XML配置文件的方法:使用appSettings元素的configSource元素