場景 Winform中自定義xml配置文件後對節點進行讀取與寫入: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100532137 在上面實現對xml配置文件進行節點的讀取和寫入時,發現一個問題, 就是節點的內容為空相應的xml ...
場景
Winform中自定義xml配置文件後對節點進行讀取與寫入:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100532137
在上面實現對xml配置文件進行節點的讀取和寫入時,發現一個問題,
就是節點的內容為空相應的xml文件中的節點會自動換行,那麼下次再進行讀取時使用
InnerText就會讀取到\r\n等符號。
註:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關註公眾號
霸道的程式猿
獲取編程相關電子書、教程推送與免費下載。
實現
保存時使用的方法是:
public static Boolean WriteXml(XmlDocument xml , string filePath) { try { xml.Save(filePath); return true; } catch (Exception ex) { Console.WriteLine(ex.Message); return false; } }
如果是對配置文件的顯示樣式沒有要求,可以通過
using (XmlTextWriter xtw = new XmlTextWriter(file, null)) { xtw.Formatting = Formatting.None; XmlDoc.Save(xtw); }
實現,但是這樣會導致xml的所有節點順序排列,不會顯示成節點結構
如果既要保持又有xml文件的結構,又要空節點不產生換行,可以在對空節點賦值時,賦予
一個空格。
if (yAxisModelList[no - 1].Title.ToString().Equals("") || yAxisModelList[no - 1].Title == null) { xmlNode.SelectSingleNode("title").InnerText = " "; xmlNode.SelectSingleNode("titleKey").InnerText = " "; } else { xmlNode.SelectSingleNode("title").InnerText = yAxisModelList[no - 1].Title; xmlNode.SelectSingleNode("titleKey").InnerText = yAxisModelList[no - 1].TitleKey; }