2

我正在寻求有关使用 XDocument(不是 XMLDocument)保存 XML 文件的帮助。

所以我有一个没有缩进的 xml 文件(实际上它是 1 行)。当我使用 XDocument.Parse 将其读取到 XDocument 时(在使用 读取和存储字符串之后StreamReader),生成的 XDocument 会缩进。

好吧,我认为只要我可以将其保存回文件而无需缩进就可以了。然而,即使我有

XmlWriterSettings writerSettings = new XmlWriterSettings();
writerSettings.NewLineOnAttributes = false;
writerSettings.NewLineHandling = NewLineHandling.None;
writerSettings.Indent = false;

并在我创建 XmlWriter 时将其传入

using (var writer = XmlWriter.Create(u.ToFileSystemPath(), settings))
{
    xd.Save(writer);
}

生成的 XML 文件仍然有缩进。当我在 Visual Studio 上调试时,我注意到这writer是一个 class XmlWellFormedWriter。这和我的结果有关系吗?任何帮助,将不胜感激。

谢谢你。

4

1 回答 1

3

SaveOptionsSave()ToString().

    string xmlstring = 
@"<Top>
    <First>1</First>
    <Second>Dude</Second>
    <Third>Now</Third>
</Top>";

    XDocument doc = XDocument.Parse(xmlstring);
    doc.Save(@"C:\temp\noIndet.xml", SaveOptions.DisableFormatting);
        // string noIndent = doc.ToString(SaveOptions.DisableFormatting);

输出:

在此处输入图像描述

于 2013-08-12T21:47:00.647 回答