Sends for the fellow dear visitors:welcome to dongpad!


 Welcome to DongPad!

 msn


C#对XML排序

我的XML结构:
<document>
    <data id="2">
        <item1.../>
        <item2.../>
    </data>
    <data id="1">
        <item1.../>
        <item2.../>
    </data>
    <data id="3">
        <item1.../>
        <item2.../>
    </data>
</document>

我需要实现的是根据id属性值对document的节点排序,C#实现代码如下: 

XPathNavigator lnav = lnodeDoc.CreateNavigator();
XPathExpression lexp = lnav.Compile("/document/data");
lexp.AddSort("@id", XmlSortOrder.Ascending, XmlCaseOrder.None, "", XmlDataType.Text);
XPathNodeIterator lnodeIterator = lnav.Select(lexp);
string lsDocTmp = string.Empty;
while (lnodeIterator.MoveNext())
    lsDocTmp = lsDocTmp + lnodeIterator.Current.OuterXml;
lnodeDoc.InnerXml = lsDocTmp;

参考文献:孟宪会:使用XPathExpression类对XML进行排序



评论: 0 | 引用: 0 | 查看次数: 757 | 返回顶部
发表评论
昵 称:    
验证码:   
 
内 容:
选 项:  
 
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 500 字 | UBB代码 开启 | [img]标签 开启