Perl XML::DOM 解析器的使用
我试图获取此 XML 文件第五行中的错误数:
<summary>
<result usecase="CRUD" target="AppHost">
<testcase size="1" cvus="1">
<sequence tps="0.25" totaltx="1" name="CRUD" min="3515" max="3515" errors="0" average="3515.0">
<node tps="0.25" totaltx="1" name="localhost" min="3515" max="3515" errors="0" average="3515.0">
[…]
</node>
</sequence>
</testcase>
</result>
</summary>
使用 XML::DOM::Parser 和此代码:
my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile($file);
my $root = $doc->getDocumentElement();
foreach my $child ($root->getChildNodes) {
print $child->getNodeName();
print "\n";
}
但我得到的不是仅打印“结果”,而是:
#text
result
#text
要达到的参数第五行中的“node”节点,我想使用 getFirstChild
方法,但我不能,因为它会查找“#text”的子节点。
这个#text 对象是什么?我该怎么做才能到达第五个节点?
谢谢你,
凯文
I'm trying to get the numbers of errors in the fifth line of this XML file:
<summary>
<result usecase="CRUD" target="AppHost">
<testcase size="1" cvus="1">
<sequence tps="0.25" totaltx="1" name="CRUD" min="3515" max="3515" errors="0" average="3515.0">
<node tps="0.25" totaltx="1" name="localhost" min="3515" max="3515" errors="0" average="3515.0">
[…]
</node>
</sequence>
</testcase>
</result>
</summary>
Using XML::DOM::Parser and this code:
my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile($file);
my $root = $doc->getDocumentElement();
foreach my $child ($root->getChildNodes) {
print $child->getNodeName();
print "\n";
}
But instead of only printing "result", I get this:
#text
result
#text
To reach the parameters of the "node" node in the fifth line, I want to use the getFirstChild
method, but I can't because it looks for children of "#text".
What is this #text object? What should I do to reach the fifth node?
Thank you,
Kevin
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试:
Try: