2
XDocument xdoc = new XDocument(
        new XDeclaration("1.0", null, null),
        new XElement(bla));

using (var writer = new XmlTextWriter(@"folderpath\index.xml", new UTF8Encoding(false)))
{
    //writer.Formatting = Formatting.Indented;
    xdoc.Save(writer);
}

我必须生成一个与我的示例完全匹配的 XML 文档。但是,此代码会产生:

<?xml version="1.0" encoding="utf-8"?>

但它应该是这样的:

<?xml version="1.0"?>

我怎样才能用XMLTextWriter或 linq 解决这个问题?

4

1 回答 1

4

请参阅文档

如果 encoding 为空,它会将文件作为 UTF-8 写出,并从 ProcessingInstruction 中省略 encoding 属性。

利用:

using (var writer = new XmlTextWriter(@"folderpath\index.xml", null))

另外,请参阅XmlTextWriter.

于 2015-07-13T17:57:08.947 回答