在我的代码中:
XmlDocument document = new XmlDocument();
XmlElement book = document.CreateElement("book");
document.AppendChild(book);
... // create and add a bunch of nodes
document.Save(filename);
我想修改我的代码,以便将字符串<?xml version="1.0"?>
保存在filename
的顶部。最简单的方法是什么?
答案 0 :(得分:1)
您需要指定XmlNodeType.XmlDeclaration
来处理XmlDocument.CreateNode(XmlNodeType, string, string)重载。这应该在文档中添加一个声明节点。
答案 1 :(得分:1)
在不操作文档的情况下,您可以为Save
方法提供XmlWriter
,默认情况下会写入XML声明:
using (XmlWriter xw = XmlWriter.Create(filename))
{
document.Save(xw);
}
答案 2 :(得分:1)
这应该有效并且还可以打印输出:
using(var writer =
XmlWriter.Create(filename, new XmlWriterSettings { Indent = true }))
{
document.Save(writer);
}