0
我有一個Perl類,它存儲樹數據結構的節點和弧信息。如何使用XML將簡單的數組哈希擴展爲XML :: Simple
當我嘗試使用XML::Simple
作爲XML輸出時,我沒有得到數組的完整擴展。
我
$table->{arcs} = @arcs;
$table->{nodes} = @nodes;
當我嘗試輸出這是XML我得到以下輸出
<?xml version='1.0'?>
<Root>
<arcs>0</arcs>
<nodes>0</nodes>
</Root>
但信息被正確地存儲在陣列中。
這裏是代碼我與
my $xml = new XML::Simple(NoAttr => 1, RootName => 'Root', ForceArray => 1);
$xml->XMLout(
$table,
KeepRoot => 1,
OutputFile => $xml_directory . $out_file . ".xml",
XMLDecl => "<?xml version='1.0'?>",
NSExpand => 0,
ValueAttr => { \@node_values => 'node' }
);
就如何擴大了陣列的任何想法工作,而無需你希望你的標籤是什麼硬編碼?
我希望能夠從數據結構到XML進行生成。
其實我改變了我的數據結構來實現我想要的東西。第一個錯誤是當我應該存儲數組引用時試圖存儲數組。然而,我改變了我的實現,爲弧和節點提供了一個散列數組,這樣我就可以指定其他屬性,並且當我通過XMLout()傳遞時,我得到了正確的輸出。 – user2479059