2014-10-27 83 views
-1

我有一个来自卫星电视和广播频道数据的XML文件。该列表包含3000多个频道的数据,长度将近80000行。每通道18行信息。第二行给出频道号码。我想改变这个数字,然后再次对列表进行排序。这是可能的,有人可以告诉我怎么做,或者你可以给我一个提示,寻求帮助。 我试图在记事本++和Excel中做到这一点,但我不是一个训练有素的用户,并不是没有这样做。对XML文件进行排序

仅供参考,这是一个集的副本:

<Service> 
    <ChannelNo>303</ChannelNo> 
    <ServiceName>BBC One Lon</ServiceName> 
    <ServiceType>TV</ServiceType> 
    <Scrambled>false</Scrambled> 
    <SatId>5</SatId> 
    <Frequency>10773</Frequency> 
    <Sid>6301</Sid> 
    <Tsid>2045</Tsid> 
    <Oid>2</Oid> 
    <AudioPid>5001</AudioPid> 
    <VideoPid>5000</VideoPid> 
    <PcrPid>5000</PcrPid> 
    <ChildrenLock>false</ChildrenLock> 
    <Skip>false</Skip> 
    <HD>false</HD> 
    <FavoriteNo>1</FavoriteNo> 
</Service> 
+1

FYI:有在XML中没有行,只有节点。 – A4L 2014-10-27 15:37:54

+0

您使用哪种编程语言进行排序?如果你对编程不感兴趣,那么你来错了网站。 – amphetamachine 2014-10-27 16:38:35

回答

0

在XSLT,它是:

<xsl:template match="/*"> 
<xsl:copy> 
    <xsl:for-each select="Service"> 
    <xsl:sort select="ChannelNo" data-type="number"/> 
    <xsl:copy-of select="."/> 
    </xsl:for-each> 
</xsl:copy> 
</xsl:template>