在Perl中通过XML::Simple创建子标记

在Perl中通过XML::Simple创建子标记,xml,perl,perl-module,Xml,Perl,Perl Module,我正在使用XML::Simple从散列创建XML,我想在XML的MainRoot之后添加更多的子标记。这是我的散列 my $args= { 'KEY1' => "Value1", 'KEY2' => "Value2", 'KEY3' => "Value3", 'KEY4' => "Value4", 'KEY5' => "Value5",

我正在使用
XML::Simple
从散列创建XML,我想在XML的MainRoot之后添加更多的子标记。这是我的散列

my $args= {
            'KEY1' => "Value1",
            'KEY2' => "Value2",
            'KEY3' => "Value3",
            'KEY4' => "Value4",
            'KEY5' => "Value5",
            'KEY6' => "Value6",
    };


XML::Simple Code

print XMLout($args,NoAttr => 1,RootName => 'MainRoot');
输出

<MainRoot>
  <KEY1>Value1</KEY1>
  <KEY2>Value2</KEY2>
  <KEY3>Value3</KEY3>
  <KEY4>Value4</KEY4>
  <KEY5>Value5</KEY5>
  <KEY6>Value6</KEY6>
</MainRoot>

价值1
价值2
价值3
价值4
价值5
价值6
所需的

<MainRoot>
    <SubTag>
      <KEY1>Value1</KEY1>
      <KEY2>Value2</KEY2>
      <KEY3>Value3</KEY3>
      <KEY4>Value4</KEY4>
      <KEY5>Value5</KEY5>
      <KEY6>Value6</KEY6>
     </SubTag>
</MainRoot>

价值1
价值2
价值3
价值4
价值5
价值6

我们如何通过XML::Simple做到这一点。请帮助我

看起来您可以添加另一个键和散列:

my $args= {
           'SubTag' => {
            'KEY1' => "Value1",
            'KEY2' => "Value2",
            'KEY3' => "Value3",
            'KEY4' => "Value4",
            'KEY5' => "Value5",
            'KEY6' => "Value6",
          },
    };
输出:

<MainRoot>
  <SubTag>
    <KEY1>Value1</KEY1>
    <KEY2>Value2</KEY2>
    <KEY3>Value3</KEY3>
    <KEY4>Value4</KEY4>
    <KEY5>Value5</KEY5>
    <KEY6>Value6</KEY6>
  </SubTag>
</MainRoot>

价值1
价值2
价值3
价值4
价值5
价值6