问题描述
|
这是以下问题的一个变体:
PowerShell:如何将XmlElement添加到非根元素
因此,我将使用该问题中使用的OP的数据。给出以下XML代码段:
<clubs>
</clubs>
要么
<clubs />
我正在尝试做的是添加第一个元素,以使最终的XML看起来像:
<clubs>
<club name=\"barracas\" rating=\"awesome\" />
</clubs>
到目前为止,我已经尝试过:Append,InsertAfter(尽管我不确定100%如何运行)
$newNode = $xml.CreateElement(\"club\")
$newNode.SetAttribute(\"name\",\"barracas\");
$newnode.SetAttribute(\"rating\",\"awesome\");
$xml.clubs.Append($newnode)
$xml.clubs.InsertAfter($newNode,$xml.clubs)
解决方法
在这种情况下,
$xml.clubs
是字符串,而不是XmlNode
。尝试以下方法:
$xml.FirstChild.AppendChild($newNode)
当然,如果元素在树的下方,那么使用SelectSingleNode()
方法可能会更好