[C#]XML依名稱 取得 節點「 InnerText」 與「屬性值」

 實作:

需求:取得下圖「節點b」的InnerText,「節點c」的InnerText與屬性(parameter)的value。


1.建立一個 XMLHelper

  public static class XMLHelper
    {   
        /// <summary>
        /// 載入XML檔案
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static XmlDocument Load(string fileName)
        {
            XmlDocument doc = new XmlDocument();
            if(!string.IsNullOrWhiteSpace(fileName))
            {
                doc.Load(fileName);
            }
            return doc;
        }
        /// <summary>
        /// 依名稱取得節點
        /// </summary>
        /// <param name="node"></param>
        /// <param name="tagName"></param>
        /// <returns></returns>
        public static XmlNode GetElementsByTagName(XmlNode node,string tagName)
        {
            if(node==null||string.IsNullOrWhiteSpace(tagName))
            {
                return null;
            }
            var childNodes = node.ChildNodes;
            for(var i=0;i< childNodes.Count;i++)
            {
                if (childNodes[i].Name == tagName)
                {
                    return childNodes[i];
                }
            }
            return null;
        }
        /// <summary>
        /// 依名稱取得屬性
        /// </summary>
        /// <param name="collection"></param>
        /// <param name="name"></param>
        /// <returns></returns>
        public static XmlAttribute GetXmlAttributeByName(XmlAttributeCollection collection, string name)
        {
            if (collection == null || string.IsNullOrWhiteSpace(name))
            {
                return null;
            }
            for (var i = 0; i < collection.Count; i++)
            {
                if (collection[i].Name == name)
                {
                    return collection[i];
                }
            }
            return null;
        }
    }

2.取得目標資料



留言

這個網誌中的熱門文章

[Visual Studio]位於網際網路或是限制區域上 或是檔案上標有 web 字樣 所以無法處理該檔案。若希望處理這些檔案 請移除 web 字樣。

[IIS] IIS執行時,發生拒絕存取路徑 問題

[windows] xcopy 備份至 「網路磁碟機」