gpt4 book ai didi

c# - XML 缩进未按预期工作

转载 作者:太空宇宙 更新时间:2023-11-03 14:20:47 24 4
gpt4 key购买 nike

我正在尝试使用字符串数据创建一个 XML 文件。 (它本身是 XML 格式。)但主要问题是我创建的 XML 格式不正确。我已经使用 XmlWriterSettings 来格式化 XML,但它似乎不起作用。谁能告诉我这段代码有什么问题。

    string unformattedXml = @"<datas><data1>sampledata1</data1><datas>";

XmlWriterSettings xmlSettingsWithIndentation = new XmlWriterSettings { Indent = true};
using (XmlWriter writer = XmlWriter.Create(Console.Out, xmlSettingsWithIndentation))
{

writer.WriteRaw(unformattedXml);
}

实际上,当我在 XmlDocument 中加载此字符串然后将其另存为文件时,它已被格式化。我只是想知道为什么它不能与 XmlWriter 一起使用。

非常感谢您的帮助。

谢谢,亚历克斯

最佳答案

要忽略空格,试试这个:

private static string FormatXml(string unformattedXml) 
{
//First read the xml, ignoring whitespace.
var readeroptions = new XmlReaderSettings { IgnoreWhitespace = true };
var reader = XmlReader.Create(new StringReader(unformattedXml), readeroptions);

//Then write it out with indentation.
var sb = new StringBuilder();
var xmlSettingsWithIndentation = new XmlWriterSettings { Indent = true };

using (var writer = XmlWriter.Create(sb, xmlSettingsWithIndentation))
writer.WriteNode(reader, true);

return sb.ToString();
}

关于c# - XML 缩进未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5469429/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com