Powershell XML操作-添加节点

时间:2018-12-07 15:37:29

标签: xml powershell innerxml

我对Powershell XML操作有点困惑,需要一些帮助。

我有一个需要修改的xml文档,当前看起来像这样:

<Root>
  <Node serial="123456789" building="" name="Item1">
    <Url>URL</Url>
    <Params>
      <Item>user={User.id}</Item>
      <Item>UserId=MyApp</Item>
    </Params>
    <Headers>
      <Item>Content-Type:application/x-www</Item>
    </Headers>
  </Node>
  <Node serial="987654321" building="" name="Item2">
    <Url>URL</Url>
    <Params>
      <Item>user={User.id}</Item>
      <Item>userName={userName}</Item>
      <Item>userserial={userserial}</Item>
      <Item>user={User.serial}</Item>
      <Item>UserId={Code}</Item>
      <Item>Password={Code}</Item>
      <Item>building={buildingserial}</Item>
    </Params>
    <Headers>
      <Item>Content-Type:application/x-www</Item>
    </Headers>
    <IEPopUp>false</IEPopUp>
  </Node>

</Root>

我需要添加的是<root>和第一个节点之间的另一个节点,基本上我需要添加以下内容:

<Node serial="5897456" building="" name="ItemNEW">
    <Url>URL</Url>
    <IEPopUp>true</IEPopUp>
  </Node>

所以最后我需要:

<Root>
   <Node serial="5897456" building="" name="ItemNEW">
    <Url>URL</Url>
    <IEPopUp>true</IEPopUp>
  </Node>
  <Node serial="123456789" building="" name="Item1">
    <Url>URL</Url>
    <Params>
      <Item>user={User.id}</Item>
      <Item>UserId=MyApp</Item>
    </Params>
    <Headers>
      <Item>Content-Type:application/x-www</Item>
    </Headers>
  </Node>
  <Node serial="987654321" building="" name="Item2">
    <Url>URL</Url>
    <Params>
      <Item>user={User.id}</Item>
      <Item>userName={userName}</Item>
      <Item>userserial={userserial}</Item>
      <Item>user={User.serial}</Item>
      <Item>UserId={Code}</Item>
      <Item>Password={Code}</Item>
      <Item>building={buildingserial}</Item>
    </Params>
    <Headers>
      <Item>Content-Type:application/x-www</Item>
    </Headers>
    <IEPopUp>false</IEPopUp>
  </Node>

</Root>

我对子节点与innerXML和innerTXT感到困惑。

如何将上述节点添加到现有的xml文档中?

我不认为这是一个重复的问题,因为我迷失在文档的node / innerXML中。

父级根目录下的所有子节点都具有相同的名称“节点”,我是否将此内容添加为子节点或节点的innerXML?

通过使用以下命令进行解析,我可以看到两者:

$xml.root.node 
$xml.root.innerxml

0 个答案:

没有答案