我使用的XmlWriter保存在.net一个如下。然而所有具有的innerText元素被写入与周围回车字符。

我试图使用XmlWriterSettings避免这些字符的书写,但没有运气尚未。

这是用一块的代码:

        XmlDocument outXml = new XmlDocument();
        outXml.AppendChild .......
        XmlWriterSettings sets = new XmlWriterSettings();
        sets.Encoding = encoding;
        sets.Indent = true;
        XmlWriter xwriter = XmlWriter.Create(file, sets);
        outXml.Save(xwriter);
        xwriter.Close();

XML输出是这样的:

  <String Id="msierrXmlFileFailedSave" Overridable="yes">
    Fehler beim Speichern der Einstellungen-Datei.
  </String>

所需的XML输出应该是这样的:

  <String Id="msierrXmlFileFailedSave" Overridable="yes">Fehler beim Speichern der Einstellungen-Datei.</String>

有一种方法,以避免元件内部那些回车的写入?

PD:我看到了有关这个问题的相反的问题,但解决的办法呢并不适用于这种情况下。

预先感谢。

Allan.c

有帮助吗?

解决方案

您将要设置的 XmlDocument.PreserveWhitespace调用保存之前财产。另一种选择是使用CDATA部分代替内文本其中待保存准确的元件需要的文本内容的

从文档:

  

如果PreserveWhitespace为真之前   负载或loadXML的被称为白色空间   节点被保留;否则,如果   此属性为false,显著   白色空间被保留,空白   不是

     

如果PreserveWhitespace为真之前   保存被调用时,在白色空间   文件被保存在输出;   否则,如果此属性为false,   XmlDocument的自动缩进的输出。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top