zoukankan      html  css  js  c++  java
  • [ASP.net]XML操作相關

    以前寫過一個操作XML的相關類。其中有一段是讀取節點值的。
    下面代碼:
            public DataView GetData(string XmlPathNode)
            
    {
                
    //Get XML Date,return DataView
                try
                
    {
                    StringReader read 
    = new StringReader(objXmlDoc.SelectSingleNode(XmlPathNode).OuterXml);
                    ds.ReadXml(read);
                }

                
    catch
                
    {
                    objError.ProgramError();
                }

                
    if ( ds.Tables.Count == 0 )
                
    {
                    
    return new DataView();
                }

                
    return ds.Tables[0].DefaultView;
            }

    此方法是讀取XML數據中指定節點及值。後來在一位朋友改寫了下代碼:
            public DataView GetData(string XmlPathNode)
            
    {
                
    //Get XML Date,return DataView
                try
                
    {
    //                System.IO.StringReader read = new System.IO.StringReader(objXmlDoc.SelectSingleNode(XmlPathNode).OuterXml);
                    XmlNodeList xnl = objXmlDoc.GetElementsByTagName(XmlPathNode);
                    System.Text.StringBuilder strXml 
    = new System.Text.StringBuilder();
                    strXml.Append( 
    "<?xml version='1.0' ?><root>" );
                    
    for (int i=0; i<xnl.Count; i++)
                    
    {
                        strXml.Append( xnl[i].OuterXml );
                    }

                    strXml.Append( 
    "</root>" );
                    System.IO.StringReader read 
    = new System.IO.StringReader( strXml.ToString() );
                    ds.ReadXml(read);
                }

                
    catch
                
    {
                    
    //
                }

                
    return ds.Tables[0].DefaultView;
            }

    此方法是讀取所有XmlPathNode節點及值,重新生成一個XML,返回DataView。

    兩方法的區別在於:前者讀取指定節點,後者是讀所有節點。
  • 相关阅读:
    CSRF攻击与防御
    別惹我
    单系统登录机制SSO
    jdk8- list操作
    mybatis--Mapper 常见报错总结(持续总结)
    死锁排查的小窍门 --使用jdk自带管理工具jstack
    oracle笔记--查询10条之后记录的数据
    zookeeper集群操作【这里只说明简单的操作步骤,zk的相关参数、说明请参考官方文档】
    利用jquery操作隐藏table某一列
    关于python3.X 报"import urllib.request ImportError: No module named request"错误,解决办法
  • 原文地址:https://www.cnblogs.com/HD/p/118897.html
Copyright © 2011-2022 走看看