2010-07-14 62 views

回答

5

您可以使用XmlWriterSettings來控制你的換行字符是什麼:

XmlWriterSettings xws = new XmlWriterSettings(); 
xws.NewLineChars = "\r\n"; 
using (XmlWriter xw = XmlWriter.Create("whatever.xml", xws)) 
{ 
    xmlDocumentInstance.Save(xw); 
} 

無論你正在使用你的XML閱讀可能是你的正常化行結尾。

+0

它仍然沒有工作。我正在使用XDocument.Load(路徑)來加載文件。 – Justin 2010-07-14 00:54:51

+0

你需要換行嗎?你可以保存並加載XML而完全忽略空白嗎?也許我們試圖解決錯誤的問題。 – 2010-07-14 03:44:17

+0

我確實需要換行。我正在使用的xml文件是我正在處理的文本編輯器的自定義文件類型。 我能夠通過使用這些設置來解決我的問題: 'xws.NewLineChars = Environment.NewLine; xws.NewLineHandling = NewLineHandling.Replace;' 但是,我仍然不明白髮生了什麼事情。 – Justin 2010-07-14 03:59:07

1

如果你調用load()和保存之前設置你的XmlDocument對象的PreserveWhiteSpace屬性(),則不會出現這種情況:

var doc = new XmlDocument(); 
doc.PreserveWhitespace = true; 
doc.Load("foo.xml"); 
... 
doc.Save("bar.xml"); // Line endings will not be altered 
相關問題