删除在 XML 中添加元素(当我们删除元素时)时创建的空格

Posted

技术标签:

【中文标题】删除在 XML 中添加元素(当我们删除元素时)时创建的空格【英文标题】:Removing whitespace created while Adding elements (when we delete Elements) in XML 【发布时间】:2013-11-26 10:31:15 【问题描述】:

我正在使用(我们正在使用 .Net 2.0)向 Root 元素添加一些 3 个元素

xnode.AppendChild(parentINode);
xnode.AppendChild(config.CreateTextNode("\r\n"));
//then removeing all added elements using 
xnode.ParentNode.RemoveChild(xnode);

这将添加一个空格,我想删除通过添加元素添加的空格,同时删除子节点。

我的原始文件如下所示:

  <c123:Places State="Mine">
  <!-- Names-places -->
 </c123:Places>

我们将为其添加一些元素:

    <c123:Images State="mine">
     <!-- Names-Places -->
     <Name place=11111>
     <Name place=22222>
     </c123:Places>

然后我们将删除元素:然后如下所示

   <c123:Images State="Mine">
   <!-- Names-Images -->


    </c123:Images>

这里我们得到的空格数等于添加的元素数,我们想要删除/避免删除子节点后创建的空格。

感谢和问候, Channabasappa M

【问题讨论】:

我只是遍历到 XML 标记然后删除空格并检查 //Removing whitespace created if (xnode.NextSibling != null && xnode.NextSibling.NodeType == XmlNodeType.Whitespace) xnode.ParentNode. RemoveChild(xnode.NextSibling); 【参考方案1】:

我只是遍历到 XML 标记然后通过检查删除了空格

    //Removing whitespace created 

   if (xnode.NextSibling != null && xnode.NextSibling.NodeType == XmlNodeType.Whitespace)
      
            xnode.ParentNode.RemoveChild(xnode.NextSibling);
      

【讨论】:

以上是关于删除在 XML 中添加元素(当我们删除元素时)时创建的空格的主要内容,如果未能解决你的问题,请参考以下文章

IE9 - 添加和删除 DOM 元素会破坏父 keydown 事件

vue点击当前元素添加class 删除兄弟元素的class

如何在单击时添加/删除数组中的元素?

setContentView() 删除使用 addView() 添加的元素

从 Xml 中删除元素会在重新加载时破坏格式

java算法-单向队列