更改Xml声明,或选择不带声明的xml部分

gan*_*ers 4 .net c# xml xpath

我需要更改文档的xml声明部分,或者只选择数据减去声明.哪个更容易?

这是我的xml看起来像的一个例子:

<?xml version="1.0" encoding="utf-16"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <fo:layout-master-set>
        <fo:simple-page-master page-height="11in" page-width="8.5in" margin-top="0.50in" margin-left="0.8in" margin-right="0.8in" margin-bottom="0.25in" master-name="PageMaster">
            <fo:region-body border-style="none" border-width="thin" margin-top="0in" margin-left="0in" margin-right="0in" margin-bottom="0.25in"/>
            <fo:region-after border-style="none" border-width="thin" extent="0.25in"/>
        </fo:simple-page-master>
    </fo:layout-master-set>
    <fo:page-sequence master-reference="PageMaster"/>
</fo:root>
Run Code Online (Sandbox Code Playgroud)

我正在尝试将xml声明更改为:

<?xml version="1.0" encoding="iso-8859-1"?>
Run Code Online (Sandbox Code Playgroud)

Irf*_*fan 7

您是否尝试以编程方式更改XML?如果是这样,你可以通过创建新的XmlDeclaration并用前一个替换它来完成,如下所示:

XmlDeclaration xmlDeclaration;
xmlDeclaration = doc.CreateXmlDeclaration("1.0", "iso-8859-1", null);
doc.ReplaceChild(xmlDeclaration, doc.FirstChild);
Run Code Online (Sandbox Code Playgroud)

您只需确保文档的第一个子项是Xml声明.