久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

C# XML操作類分享

這篇文章主要分享了C# XML操作類的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Android九宮格圖片展示的具體代碼,供大家參考,具體內容如下

XmlHelper


using System.Xml;
using System.Data;

namespace DotNet.Utilities
{
 /// <summary>
 /// Xml的操作公共類
 /// </summary> 
 public class XmlHelper
 {
  #region 字段定義
  /// <summary>
  /// XML文件的物理路徑
  /// </summary>
  private string _filePath = string.Empty;
  /// <summary>
  /// Xml文檔
  /// </summary>
  private XmlDocument _xml;
  /// <summary>
  /// XML的根節點
  /// </summary>
  private XmlElement _element;
  #endregion

  #region 構造方法
  /// <summary>
  /// 實例化XmlHelper對象
  /// </summary>
  /// <param name="xmlFilePath">Xml文件的相對路徑</param>
  public XmlHelper(string xmlFilePath)
  {
   //獲取XML文件的絕對路徑
   _filePath = SysHelper.GetPath(xmlFilePath);
  }
  #endregion

  #region 創建XML的根節點
  /// <summary>
  /// 創建XML的根節點
  /// </summary>
  private void CreateXMLElement()
  {

   //創建一個XML對象
   _xml = new XmlDocument();

   if (DirFile.IsExistFile(_filePath))
   {
    //加載XML文件
    _xml.Load(this._filePath);
   }

   //為XML的根節點賦值
   _element = _xml.DocumentElement;
  }
  #endregion

  #region 獲取指定XPath表達式的節點對象
  /// <summary>
  /// 獲取指定XPath表達式的節點對象
  /// </summary>  
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  public XmlNode GetNode(string xPath)
  {
   //創建XML的根節點
   CreateXMLElement();

   //返回XPath節點
   return _element.SelectSingleNode(xPath);
  }
  #endregion

  #region 獲取指定XPath表達式節點的值
  /// <summary>
  /// 獲取指定XPath表達式節點的值
  /// </summary>
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  public string GetValue(string xPath)
  {
   //創建XML的根節點
   CreateXMLElement();

   //返回XPath節點的值
   return _element.SelectSingleNode(xPath).InnerText;
  }
  #endregion

  #region 獲取指定XPath表達式節點的屬性值
  /// <summary>
  /// 獲取指定XPath表達式節點的屬性值
  /// </summary>
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  /// <param name="attributeName">屬性名</param>
  public string GetAttributeValue(string xPath, string attributeName)
  {
   //創建XML的根節點
   CreateXMLElement();

   //返回XPath節點的屬性值
   return _element.SelectSingleNode(xPath).Attributes[attributeName].Value;
  }
  #endregion

  #region 新增節點
  /// <summary>
  /// 1. 功能:新增節點。
  /// 2. 使用條件:將任意節點插入到當前Xml文件中。
  /// </summary>  
  /// <param name="xmlNode">要插入的Xml節點</param>
  public void AppendNode(XmlNode xmlNode)
  {
   //創建XML的根節點
   CreateXMLElement();

   //導入節點
   XmlNode node = _xml.ImportNode(xmlNode, true);

   //將節點插入到根節點下
   _element.AppendChild(node);
  }

  /// <summary>
  /// 1. 功能:新增節點。
  /// 2. 使用條件:將DataSet中的第一條記錄插入Xml文件中。
  /// </summary>  
  /// <param name="ds">DataSet的實例,該DataSet中應該只有一條記錄</param>
  public void AppendNode(DataSet ds)
  {
   //創建XmlDataDocument對象
   XmlDataDocument xmlDataDocument = new XmlDataDocument(ds);

   //導入節點
   XmlNode node = xmlDataDocument.DocumentElement.FirstChild;

   //將節點插入到根節點下
   AppendNode(node);
  }
  #endregion

  #region 刪除節點
  /// <summary>
  /// 刪除指定XPath表達式的節點
  /// </summary>  
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  public void RemoveNode(string xPath)
  {
   //創建XML的根節點
   CreateXMLElement();

   //獲取要刪除的節點
   XmlNode node = _xml.SelectSingleNode(xPath);

   //刪除節點
   _element.RemoveChild(node);
  }
  #endregion //刪除節點

  #region 保存XML文件
  /// <summary>
  /// 保存XML文件
  /// </summary>  
  public void Save()
  {
   //創建XML的根節點
   CreateXMLElement();

   //保存XML文件
   _xml.Save(this._filePath);
  }
  #endregion //保存XML文件

  #region 靜態方法

  #region 創建根節點對象
  /// <summary>
  /// 創建根節點對象
  /// </summary>
  /// <param name="xmlFilePath">Xml文件的相對路徑</param>  
  private static XmlElement CreateRootElement(string xmlFilePath)
  {
   //定義變量,表示XML文件的絕對路徑
   string filePath = "";

   //獲取XML文件的絕對路徑
   filePath = SysHelper.GetPath(xmlFilePath);

   //創建XmlDocument對象
   XmlDocument xmlDocument = new XmlDocument();
   //加載XML文件
   xmlDocument.Load(filePath);

   //返回根節點
   return xmlDocument.DocumentElement;
  }
  #endregion

  #region 獲取指定XPath表達式節點的值
  /// <summary>
  /// 獲取指定XPath表達式節點的值
  /// </summary>
  /// <param name="xmlFilePath">Xml文件的相對路徑</param>
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  public static string GetValue(string xmlFilePath, string xPath)
  {
   //創建根對象
   XmlElement rootElement = CreateRootElement(xmlFilePath);

   //返回XPath節點的值
   return rootElement.SelectSingleNode(xPath).InnerText;
  }
  #endregion

  #region 獲取指定XPath表達式節點的屬性值
  /// <summary>
  /// 獲取指定XPath表達式節點的屬性值
  /// </summary>
  /// <param name="xmlFilePath">Xml文件的相對路徑</param>
  /// <param name="xPath">XPath表達式,
  /// 范例1: @"Skill/First/SkillItem", 等效于 @"http://Skill/First/SkillItem"
  /// 范例2: @"Table[USERNAME='a']" , []表示篩選,USERNAME是Table下的一個子節點.
  /// 范例3: @"ApplyPost/Item[@itemName='崗位編號']",@itemName是Item節點的屬性.
  /// </param>
  /// <param name="attributeName">屬性名</param>
  public static string GetAttributeValue(string xmlFilePath, string xPath, string attributeName)
  {
   //創建根對象
   XmlElement rootElement = CreateRootElement(xmlFilePath);

   //返回XPath節點的屬性值
   return rootElement.SelectSingleNode(xPath).Attributes[attributeName].Value;
  }
  #endregion

  #endregion

  public static void SetValue(string xmlFilePath, string xPath, string newtext)
  {
   //string path = SysHelper.GetPath(xmlFilePath);
   //var queryXML = from xmlLog in xelem.Descendants("msg_log")
   //    //所有名字為Bin的記錄
   //    where xmlLog.Element("user").Value == "Bin"
   //    select xmlLog;

   //foreach (XElement el in queryXML)
   //{
   // el.Element("user").Value = "LiuBin";//開始修改
   /
                
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

這篇文章主要為大家詳細介紹了C# SendMail發送郵件功能實現,具有一定的參考價值,感興趣的小伙伴們可以參考一下
這篇文章主要介紹了C#實現的SQL備份與還原功能,結合具體實例形式分析了C#操作數據庫實現SQL備份與還原相關的控件、SQL連接、文件等操作技巧,需要的朋友可以參考下
這篇文章主要介紹了C#使用checkedListBox1控件鏈接數據庫的方法,結合具體實例形式分析了數據庫的創建及checkedListBox1控件連接數據庫的相關操作技巧,需要的朋友可以參考下
這篇文章主要介紹了C#實現的sqlserver操作類,結合具體實例形式分析了C#針對sqlserver數據庫進行連接、查詢、更新、關閉等相關操作技巧,需要的朋友可以參考下
這篇文章主要為大家詳細介紹了C#多線程數組模擬socket的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
這篇文章主要為大家詳細介紹了C#根據http和ftp圖片地址獲取對應圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
主站蜘蛛池模板: av日韩精品| 欧美日韩高清免费 | 69热视频在线观看 | 国产精品亚洲成在人线 | 精品久久久久久久久久 | 久久亚洲国产精品 | 日韩a| 久久精品色欧美aⅴ一区二区 | 国产999精品久久久久久 | h片在线观看网站 | 一区二区三区在线 | 欧 | 给我免费的视频在线观看 | 欧美色综合一区二区三区 | 观看毛片 | 久久久久久国产 | 美女毛片| 综合久久av | www.欧美| 福利网站在线观看 | 成人在线免费看 | 国产精品久久在线观看 | 色桃网 | 国产乱码精品一区二区三区中文 | 国产精品精品久久久 | 欧美久久一区 | 伦理午夜电影免费观看 | 国产一区二区三区视频在线观看 | 国产一区视频在线 | 麻豆av在线| 亚洲国产小视频 | 国产精品影视在线观看 | 国产美女一区二区三区 | 午夜精品久久久久久久久久久久久 | 亚洲 欧美 日韩在线 | va在线 | 国产亚洲一区二区三区在线 | 欧美日韩亚洲一区 | 97精品超碰一区二区三区 | 免费99精品国产自在在线 | 特级黄色毛片 | 美女露尿口视频 |