You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用XmlWriter将XML声明改为standalone="yes"?

修改XmlWriter生成的XML声明(不含encoding,添加standalone="yes")

你可以通过XmlWriterSettings来配置XML声明的属性,这是XmlWriter原生支持的方式,无需硬编码XML声明内容。具体实现如下:

核心配置要点

  • 创建XmlWriterSettings实例,设置Standalone为"yes",指定XML声明的standalone属性。
  • 设置Encoding为null,避免生成默认的encoding="utf-8"属性。

修改后的完整代码

static void Main(string[] args)
{
    string filePath = "Test.xml";

    // 配置XmlWriter的生成规则
    XmlWriterSettings settings = new XmlWriterSettings();
    settings.Standalone = "yes"; // 启用standalone声明
    settings.Encoding = null;    // 不输出encoding属性
    settings.Indent = true;      // 可选:格式化XML结构,提升可读性

    using (XmlWriter writer = XmlWriter.Create(filePath, settings))
    {
        writer.WriteStartElement("Root");
        writer.WriteElementString("Element", "Value");
        writer.WriteEndElement();
    }

    Console.WriteLine("XML has been created successfully.");
}

说明

  • settings.Standalone:直接控制XML声明中的standalone属性值,取值为"yes"或"no",完全符合XML规范。
  • settings.Encoding = null:默认情况下XmlWriter会根据编码自动添加encoding属性,设置为null后将不再输出该属性,正好匹配你想要的<?xml version="1.0" standalone="yes"?>格式。

内容的提问来源于stack exchange,提问作者Richard Brescher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 12:28:12