平面xml文件c#

本文关键字:文件 xml 平面 | 更新日期: 2023-09-27 18:17:04

我正在编写UTF-8(没有Bom)编码的xml文件,如下所示:

xmldecl.Encoding = "UTF-8";
dataDoc.InsertBefore(xmldecl, root);//dataDoc is XmlDocument object
using (var writer = new XmlTextWriter(targetPath, new UTF8Encoding(false)))
{
     dataDoc.Save(writer);
}

我的"问题"是文件保存在一行而不是xml格式,

。E如果我有以下xml:

<ElementA>
    <ElementB/>
</ElementA>
在我的代码中,xml文件将是:
<ElementA><ElementB/></ElementA>

代替xml格式。

我怎么解决它?

*我试着用notepad++

打开文件

谢谢。

平面xml文件c#

XmlTextWriter有一个属性Formatting来定义输出的方式:

using (var writer = new XmlTextWriter(targetPath, new UTF8Encoding(false)))
{
    writer.Formatting = Formatting.Indented;
    dataDoc.Save(writer);
}