C#中读写Xml配置文件常用方法工具类
生活随笔
收集整理的這篇文章主要介紹了
C#中读写Xml配置文件常用方法工具类
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
場景
有時需要使用配置文件保存一些配置的屬性,使其在下次打開時設置仍然生效。
這里以對xml配置文件的讀寫為例。
1.讀取XML配置文。
2.寫入XML配置文件。
3.匹配 XPath 表達式的第一個 XmlNode。
4.獲取節(jié)點text。
5.根據(jù)xPath獲取節(jié)點個數(shù)。
6.根據(jù)xPath獲取節(jié)點列表。
以上功能只是根據(jù)自己實際業(yè)務封裝的方法,其他方法可以根據(jù)自己的實際業(yè)務去封裝。
實現(xiàn)
在項目目錄下新建xml配置文件。
?
代碼:
class ReadXMLConfigHelper{#region 讀取XML配置文件/// <summary>/// 讀取XML配置文件? 失敗返回null/// </summary>/// <param name="filePath">xml文件路徑,相對于bin下debug目錄</param>/// <returns>xml文檔對象</returns>public static XmlDocument readXml(string filePath){//獲取可執(zhí)行文件的路徑-即bin目錄下的debug或者release目錄string context = System.Windows.Forms.Application.StartupPath;//拼接全路徑string path = String.Concat(context, filePath);XmlDocument xml = new XmlDocument();//打開一個xmltry{xml.Load(path);return xml;}catch (Exception ex){Console.WriteLine(ex.Message);return null;}}#endregion#region 寫入XML配置文件/// <summary>///? 寫入XML配置文件 成功返回True 失敗返回false/// </summary>/// <param name="xml">xml對象</param>/// <param name="filePath">文件路徑</param>/// <returns></returns>public static Boolean? writeXml(XmlDocument xml , string filePath){//獲取可執(zhí)行文件的路徑-即bin目錄下的debug或者release目錄string context = System.Windows.Forms.Application.StartupPath;//拼接全路徑string path = String.Concat(context, filePath);try{xml.Save(path);return true;}catch (Exception ex){Console.WriteLine(ex.Message);return false;}}#endregion#region 匹配 XPath 表達式的第一個 XmlNode/// <summary>/// 匹配 XPath 表達式的第一個 XmlNode/// </summary>/// <param name="xml">xml文檔對象</param>/// <param name="xPath">xPath-路徑匹配表達式</param>/// <returns>xml節(jié)點對象失敗返回Null</returns>public static XmlNode getXmlNode(XmlDocument xml,string xPath){//選擇匹配 XPath 表達式的第一個 XmlNodeXmlNode xmlNode = xml.SelectSingleNode(xPath);//讀取節(jié)點數(shù)據(jù)if (xmlNode != null){return xmlNode;}else{return null;}}#endregion#region 獲取節(jié)點text/// <summary>/// 獲取節(jié)點text/// </summary>/// <param name="xml獲取節(jié)點textNode">節(jié)點對象</param>/// <returns>返回null則失敗,返回""則代表節(jié)點內(nèi)容為空,成功返回節(jié)點text</returns>public static string getNodeText(XmlNode xmlNode){//讀取節(jié)點數(shù)據(jù)if (xmlNode != null){string nodeText = xmlNode.InnerText;if (nodeText != null){return nodeText;}else{return "";}}else{return null;}}#endregion#region 根據(jù)xPath獲取節(jié)點個數(shù)/// <summary>/// 根據(jù)xPath獲取節(jié)點個數(shù)/// </summary>/// <param name="xml">xml文檔對象</param>/// <param name="xPath">xPath表達式</param>/// <returns>返回符合xPath的節(jié)點數(shù),沒有則返回0</returns>public static int getCountByXpath(XmlDocument xml,string xPath){//讀取節(jié)點listXmlNodeList nodelist = xml.SelectNodes(xPath);if (nodelist != null){return nodelist.Count;}else{return 0;}}#endregion#region 根據(jù)xPath獲取節(jié)點列表/// <summary>///? 根據(jù)xPath獲取節(jié)點列表/// </summary>/// <param name="xml">xml文檔對象</param>/// <param name="xPath">xPath表達式</param>/// <returns>返回符合xPath的節(jié)點列表,失敗返回null</returns>public static XmlNodeList getNodeListByXpath(XmlDocument xml, string xPath){//讀取節(jié)點listXmlNodeList nodelist = xml.SelectNodes(xPath);if (nodelist != null){return nodelist;}else{return null;}}#endregion}調(diào)用示例:
XmlDocument xml = ReadXMLConfigHelper.readXml(xmlFilePath);XmlNodeList nodeList = ReadXMLConfigHelper.getNodeListByXpath(xml, Global.RADIO_GROUP_COUNT_XPATH);注:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費下載。
?
總結(jié)
以上是生活随笔為你收集整理的C#中读写Xml配置文件常用方法工具类的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Winform中跨窗体设置ZedGrap
- 下一篇: C#中一行代码实现18位数字时间戳转换为