System.Xml.XmlDocument.Save 方法 (XmlWriter)

方法描述

将 XML 文档保存到指定的 XmlWriter。

语法定义(C# System.Xml.XmlDocument.Save 方法 (XmlWriter) 的用法)

public virtual void Save(
	XmlWriter w
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
w System-Xml-XmlWriter 要向其中保存内容的 XmlWriter。
返回值 void

提示和注释

只有当 PreserveWhitespace 设置为 true 时才保留空白。

XmlWriter 的编码确定写出的编码(XmlDeclaration 节点的编码被 XmlWriter 的编码替换)。 如果未指定 XmlWriter 的编码方式,则保存 XmlDocument 时不保存编码特性。

保存文档时,生成 xmlns 特性以正确保持节点标识(LocalName + NamespaceURI)。 例如,下面的 C# 代码

复制

XmlDocument doc = new XmlDocument();

doc.AppendChild(doc.CreateElement("item","urn:1"));

doc.Save(Console.Out);

生成此 xmls 特性:

复制

xmls="urn:1"/>

该方法是文档对象模型 (DOM) 的 Microsoft 扩展。

请注意,只有 Save 方法强制使用格式良好的 XML 文档。 所有其他 Save 重载只保证格式良好的片段。

System.Xml.XmlDocument.Save 方法 (XmlWriter)例子

下面的示例将 XML 加载到 XmlDocument 对象中,然后将其保存到外部文件中。

using System;
using System.Xml;

public class Sample {

  public static void Main() {

    // Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("wrench");

   // Add a price element.
   XmlElement newElem = doc.CreateElement("price");
   newElem.InnerText = "10.95";
   doc.DocumentElement.AppendChild(newElem);

    // Save the document to a file and auto-indent the output.
    XmlTextWriter writer = new XmlTextWriter("data.xml",null);
    writer.Formatting = Formatting.Indented;
    doc.Save(writer);
  }
}

异常

异常 异常描述
XmlException 此操作不产生格式良好的 XML 文档(例如,没有文档元素或重复的 XML 声明)。

命名空间

namespace: System.Xml

程序集: System.Xml(在 System.Xml.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。