首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xerces-c: DOM xml解析

xerces-c: DOM xml解析
EN

Stack Overflow用户
提问于 2010-12-28 16:53:00
回答 1查看 1.8K关注 0票数 2

我有一个关于XML解析的问题。我正在试验一个示例程序,并对它做了一些修改,试图了解解析是如何工作的。但是,我遇到了一个我不太理解的输出,希望你们中的一些人能对可能发生的事情有所了解。

这是我的xml文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root xmlns="http://www.test.com">
   <ApplicationSettings>
           <option_a>"10"</option_a> 
           <option_b>"24"</option_b>
   </ApplicationSettings>
</root>

我在整个程序中插入了调试语句,试图了解函数调用(如getChildNodes() )调用时发生了什么。这是我收到的输出:

代码语言:javascript
复制
Parsing xml file...
Processing Root...
Processing children with getChildNodes()...
>>>>>>>>>>> Loop child 0: Node name is: #text
>>>>>>>>>>> Loop child 1: Node name is: ApplicationSettings
= ApplicationSettings processing children with getChildNodes()...
***** iter 0 child name is #text
***** iter 1 child name is option_a
***** iter 2 child name is #text
***** iter 3 child name is option_b
***** iter 4 child name is #text
>>>>>>>>>>> Loop: 2 Node name is: #text

从输出中,我可以很容易地推断出它正确地解析了我的xml文件。但是,我注意到程序还检测到了名为#text (使用getNodeName()函数打印出来)的额外节点。我的问题是,那些#text引用了什么,为什么它们会周期性地出现在循环中?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-28 17:00:18

示例中的#text节点引用标记之间的空格。举个例子

代码语言:javascript
复制
<root xmlns="http://www.test.com">
   <ApplicationSettings>

...com"><App...之间有一个行提要和四个空格。

您可以尝试解析以下内容以查看发生了什么:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root xmlns="http://www.test.com"><ApplicationSettings><option_a>"10"</option_a><option_b>"24"</option_b></ApplicationSettings></root>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4547714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档