zoukankan      html  css  js  c++  java
  • Winform中对xml文件进行保存时空白节点自动换行问题的解决

    场景

    Winform中自定义xml配置文件后对节点进行读取与写入:

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100532137

    在上面实现对xml配置文件进行节点的读取和写入时,发现一个问题,

    就是节点的内容为空相应的xml文件中的节点会自动换行,那么下次再进行读取时使用

    InnerText就会读取到 等符号。

    注:

    博客主页:
    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;
                    }
  • 相关阅读:
    lua 语言基础
    C语言基础
    文件夹目录排序
    C#调用Server_SQL
    SQL语言基础
    批量修改文件名
    快捷键Alt、Shift、Ctrl 点击事件
    第一节:基础语法
    一:ASP.NET基础知识(二)
    孩子,我首先希望你自始至终都是一个理想主义者!
  • 原文地址:https://www.cnblogs.com/badaoliumangqizhi/p/11583992.html
Copyright © 2011-2022 走看看