Winform中对xml文件进行保存时空白节点自动换行问题的解决

mac2022-06-30  20

场景

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; }

 

转载于:https://www.cnblogs.com/badaoliumangqizhi/p/11583992.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)