XElement.Save
实际上是我需要的,但它会以以下方式开始文件:
<?xml version="1.0" encoding="utf-8"?>
有没有办法防止这种情况发生?
我在创建XElement
后,是否应该使用其他类型或方法来保存?
还是应该通过XmlReader.Read
跳过那一行?因为这样做我觉得更加脆弱,我假设第一行总是这个xml声明。
最简单的实现方式是什么?
XElement.Save
实际上是我需要的,但它会以以下方式开始文件:
<?xml version="1.0" encoding="utf-8"?>
有没有办法防止这种情况发生?
我在创建XElement
后,是否应该使用其他类型或方法来保存?
还是应该通过XmlReader.Read
跳过那一行?因为这样做我觉得更加脆弱,我假设第一行总是这个xml声明。
最简单的实现方式是什么?
XElement xmlTree = new XElement("Root",
new XAttribute("Attribute1", 1),
new XElement("Child1", 1),
new XElement("Child2", 2)
);
using (var writer = XmlWriter.Create("data.xml", new XmlWriterSettings { OmitXmlDeclaration = true, Indent = true }))
xmlTree.Save(writer);
XElement.ToString()
不会在输出中添加 XML 声明。但我不明白为什么 XmlReader
或任何 XML 解析器都会对标准的 XML 声明感到困惑。