Есть ли способ в .NET Framework или бесплатная библиотека Open Source для красивой печати XML?
.NET XML Pretty Printer?
Ответ 1
Все стандартные XML-интерфейсы .Net будут отформатировать их вывод.
Использование LINQ to XML:
string formatted = XDocument.Parse(source).ToString();
или
string formatted = XDocument.Load(path).ToString();
Ответ 2
Используйте XmlWriterSettings с XmlWriter
var doc = new XmlDocument();
doc.Load(@"c:\temp\asdf.xml");
var writerSettings = new XmlWriterSettings
{
Indent = true,
NewLineOnAttributes = true,
};
var writer = XmlWriter.Create(@"c:\temp\asdf_pretty.xml", writerSettings);
doc.Save(writer);
Ответ 3
Вы можете использовать XMLBuilder для генерации XML и затем вызвать метод ToString для получения отступов.