带有换行符的C#Xml节点InnerText-如何写和读
本文关键字:何写 InnerText- 节点 换行符 C#Xml | 更新日期: 2023-09-27 18:28:19
我想使用c#中的XmlDocument对象将带换行符的备忘录文本存储在xml节点中。我可以通过简单的内部文本分配来写它。
它看起来像下面的
<CSScript>
Line 1
...
...
Line n
</CSScript>
但是,我读不懂,怎么办呢?
查看PreserveWhitespace
属性。在.Load()
您的XML数据之前,请将其设置为true,如下所示:
string filename = "C:''myxml.xml";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.PreserveWhitespace = true;
xmlDoc.Load(filename);
同样,在调用.Save()
之前,将其设置为true:
xmlDoc.SomethingNode.InnerText = "Line 1'r'n...'r'n....";
xmlDoc.PreserveWhitespace = true; // assuming it hasn't already been set to true
xmlDoc.Save(someFileLocation);
请注意,并不是所有的XML处理程序/查看器都会遵循这种行为——他们最终可能会将其视为(可能是错误的)无关紧要的空白,并根据文档的结构将其剥离(例如,如果您打开文档在浏览器中查看,MSIE可能会这样做,但实际上不会更改文本源)。还要注意,如果使用LINQ to XML,则可以使用LoadOptions.PreserveWhitespace
和SaveOptions.DisableFormatting
来获得类似的效果。