首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >perl tinyXML - node不是XmlNodePtr类型

perl tinyXML - node不是XmlNodePtr类型
EN

Stack Overflow用户
提问于 2011-08-31 23:14:45
回答 1查看 168关注 0票数 0

我在cpan和google上搜索了文档,似乎找不到答案。我正在使用perl读入一个XML文件。当我执行以下代码时,它会报错

XmlGetChildNode: node在/usr/local/lib/perl/5.10.1/XML/TinyXML.pm第485行不是XmlNodePtr类型。

我必须对我的变量做什么才能使它成为XmlNodePtr并正确地使用它来调用getChildNode()?

`

代码语言:javascript
复制
my $xml = XML::TinyXML->new();
$xml->loadFile("myfile");

my $node = $xml->getRootNode(1);
my $val = $node->value("context");
print "root Node value: $val\n";    prints "root Node value: context"
my $clen = $node->countChildren();
print "total children $clen\n";     prints "total children 115"

my $this_node = $xml->getChildNode($node, 0);  <----error

`

我还尝试了XML::TinyXML::Node文档中似乎是正确的解决方案(如下所示),该文档还说:

XmlGetChildNode: node在/usr/local/lib/perl/5.10.1/XML/TinyXML.pm第485行不是XmlNodePtr类型。

`

代码语言:javascript
复制
my $ptr = XML::TinyXML::Node->new($node);
my $this_node = $xml->getChildNode($ptr, 0); <---- error

`

EN

回答 1

Stack Overflow用户

发布于 2011-09-01 16:27:27

尝试在$node本身上调用getChildNode。另外,节点索引可能从1开始,而不是0。

代码语言:javascript
复制
my $this_node = $node->getChildNode(1);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7259225

复制
相关文章

相似问题

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