我想在使用XML :: Simple的Perl中解析一些XML。XML ::簡單的Perl沒有檢測到所有元素
的XML如下格式:
<result>
<doc>
<field name="title">Sample Title</field>
<field name="content">Content 1</field>
<field name="content">Content 2</field>
.
.
.
<field name="content">Content n</field>
</doc>
</result>
使用XML ::簡單的我試圖解析這個和打印標題和所有的內容。問題是隻有最後一個內容項目正在打印。我決定用戶Dumper,這是它返回的內容:
$VAR1= {
'result'=> {
'doc' => [
{
'field' => {
'content' => {
'content' => 'Content n'
},
'title' => {
'content' => 'Sample Title'
}
}
}
只顯示每個doc元素的最後一個內容項目。這有什麼理由嗎?我能做些什麼來檢測所有內容項目?
編輯:下面的代碼:
my $url = "http://www.testurl.com/test.xml";
my $content = get $url;
die "Couldn't get XML" unless defined $content;
my $xml = new XML::Simple;
my $xmlData = $xml->XMLin($content);
print Dumper($xmlData);
發佈相關代碼。特別是對XML :: Simple實例和打印的初始化。 – FailedDev
好吧,我已經添加了代碼。內容是通過HTTP在內部存儲的XML文件。 –
那麼http://www.testurl.com/test.xml指向你的.xml的權利? – FailedDev