gpt4 book ai didi

c# - 可以使用 XmlWriter 将 XML 写入内存吗?

转载 作者:IT王子 更新时间:2023-10-29 04:45:59 25 4
gpt4 key购买 nike

我正在创建一个返回 XML 的 ASHX,但是当我这样做时它需要一个路径

XmlWriter writer = XmlWriter.Create(returnXML, settings)

但 returnXML 现在只是一个空字符串(我猜这行不通),但是我需要将 XML 写入一些内容,然后我可以将其作为响应文本发送。我尝试了 XmlDocument,但它给了我一个期望字符串的错误。我在这里缺少什么?

最佳答案

如果你真的想写入内存,传入一个 StringWriterStringBuilder 像这样:

using System;
using System.Text;
using System.Xml;

public class Test
{
static void Main()
{
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
StringBuilder builder = new StringBuilder();

using (XmlWriter writer = XmlWriter.Create(builder, settings))
{
writer.WriteStartDocument();
writer.WriteStartElement("root");
writer.WriteStartElement("element");
writer.WriteString("content");
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndDocument();
}
Console.WriteLine(builder);
}
}

但是,如果您想将其直接写入响应,您可以传入 HttpResponse.Output,它是一个 TextWriter:

using (XmlWriter writer = XmlWriter.Create(Response.Output, settings))
{
// Write into it here
}

关于c# - 可以使用 XmlWriter 将 XML 写入内存吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/683189/

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