Почему все мои разрывы строк меняются с "/ r / n" на "/ n /" и как я могу предотвратить это? - PullRequest
5 голосов
/ 14 июля 2010

Я сохраняю свои файлы в виде документов XML, используя XDocument.Save (путь), и после сохранения и загрузки документа все разрывы строк изменились с "/ r / n" на "/ n /". Почему это происходит и как я могу это исправить?

Ответы [ 2 ]

5 голосов
/ 14 июля 2010

Вы можете использовать XmlWriterSettings для управления символами разрыва строки:

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

Все, что вы используете для чтения в XML, может нормализовать окончания строк.

1 голос
/ 11 октября 2011

Если вы установите свойство PreserveWhiteSpace в своем объекте XmlDocument до вызова Load () и Save (), то этого не произойдет:

var doc = new XmlDocument();
doc.PreserveWhitespace = true;
doc.Load("foo.xml");
...
doc.Save("bar.xml"); // Line endings will not be altered
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...