按多个条件对XML节点排序
我试图将以下XML按日期排序作为主要标准,然后按价格排序作为第二个标准 我觉得先按价格排序,然后按日期排序就足够了。我希望这本书按多个条件对XML节点排序,xml,powershell,sorting,Xml,Powershell,Sorting,我试图将以下XML按日期排序作为主要标准,然后按价格排序作为第二个标准 我觉得先按价格排序,然后按日期排序就足够了。我希望这本书bk108,因为它是最新的、价格最高的书,但第一本书是bkXXX,尽管它的价格低于bk108 $xml=[xml]@' 将[System.Xml.XmlNode]$orig=$Xml.catalog之后的代码替换为以下内容: [xml]$sortedXml = @" <catalog> $(($orig.book | sort-obj
bk108
,因为它是最新的、价格最高的书,但第一本书是bkXXX
,尽管它的价格低于bk108
$xml=[xml]@'
将[System.Xml.XmlNode]$orig=$Xml.catalog
之后的代码替换为以下内容:
[xml]$sortedXml = @"
<catalog>
$(($orig.book | sort-object -Property {[double] $_.price},{[datetime]$_.publish_date} -descending).OuterXml)
</catalog>
"@
[xml]$sortedXml=@”
$($orig.book | sort object-Property{[double]$\uu.price},{[datetime]$\uu.publish\u date}降序).OuterXml)
"@
将[System.Xml.XmlNode]$orig=$Xml.catalog
之后的代码替换为以下内容:
[xml]$sortedXml = @"
<catalog>
$(($orig.book | sort-object -Property {[double] $_.price},{[datetime]$_.publish_date} -descending).OuterXml)
</catalog>
"@
[xml]$sortedXml=@”
$($orig.book | sort object-Property{[double]$\uu.price},{[datetime]$\uu.publish\u date}降序).OuterXml)
"@
当前,您正在按一个参数一次排序。首先,你只看价格,按价格排序,然后看日期,只按日期排序。当然,您最终会得到一个列表,该列表只按末尾的日期排序。此外,您的排序有些不寻常,因为不接受代码块。bk108
是最新和最昂贵的一个,而不是bk105
。输入错误,很抱歉,我将在说明中更改它。当前,您一次按一个参数排序。首先,你只看价格,按价格排序,然后看日期,只按日期排序。当然,您最终会得到一个列表,该列表只按末尾的日期排序。此外,您的排序有点不寻常,因为不接受代码块。bk108
是最新和最昂贵的一个,而不是bk105
。打字,很抱歉,我会在说明中更改它。有没有办法避免写标签?我的文件的Xml结构有点复杂。谢谢但这只能在发布日期和价格之间切换位置。有没有办法避免写标签?我的文件的Xml结构有点复杂。谢谢但这只能在发布日期和价格之间切换位置