确定 XML 是否包含 DOCTYPE

本文关键字:DOCTYPE 包含 是否 XML 确定 | 更新日期: 2023-09-27 18:32:55

有没有办法在 VB.NET(或C#)中确定XML文件是否具有DOCTYPE元素?

谢谢!

确定 XML 是否包含 DOCTYPE

来自 msdn 文档 XmlDocument.DocumentType 属性:

获取包含 DOCTYPE 声明的节点

上面链接中的示例:

XmlDocument doc = new XmlDocument();
doc.LoadXml("<!DOCTYPE book [<!ENTITY h 'hardcover'>]>" +
            "<book genre='novel' ISBN='1-861001-57-5'>" +
            "<title>Pride And Prejudice</title>" +
            "<style>&h;</style>" +
            "</book>");
// Display the DocumentType.
Console.WriteLine(doc.DocumentType.OuterXml);

您可以使用 XPath。

        XmlDocument doc = new XmlDocument();
        doc.LoadXml("<root>....</root>"); // Or other way to get your XML
        var node = doc.SelectSingleNode("//DOCTYPE");
        if (node != null)
        {
            ... // node.InnerText contains the element text
        }