Java 使用JDOM检查XML文档与DTD的兼容性?

Java 使用JDOM检查XML文档与DTD的兼容性?,java,xml,jdom,Java,Xml,Jdom,我正在使用Java,我想检查XML文件是否对DTD有效 假设我们确实有一个DTD文件,我想根据DTD文件中提出的相同定义检查某些XML文件是否有效 使用JDOM有什么方法可以做到这一点吗?是的,可以,在JDOM中。这在JDOM2.x中是最简单的(与1.x相反) 请参阅这需要一个XMLReaderJDOMFactory。一个示例用法是: SAXBuilder sb = new SAXBuilder(XMLReaders.DTDVALIDATING); Document doc =

我正在使用Java,我想检查XML文件是否对DTD有效

假设我们确实有一个DTD文件,我想根据DTD文件中提出的相同定义检查某些XML文件是否有效


使用JDOM有什么方法可以做到这一点吗?

是的,可以,在JDOM中。这在JDOM2.x中是最简单的(与1.x相反)

请参阅这需要一个XMLReaderJDOMFactory。一个示例用法是:

    SAXBuilder sb = new SAXBuilder(XMLReaders.DTDVALIDATING);
    Document doc = sb.build("http://www.w3schools.com/dtd/note_ex_dtd.xml");
    XMLOutputter xout = new XMLOutputter(Format.getPrettyFormat());
    xout.output(doc, System.out);

请注意,上面的代码根据DocType声明(“Note.DTD”)中指定的DTD验证了XML,该声明位于Note-ex_DTD.XML文档的相对位置。

您能给我一个更清晰的代码,先创建DTD文件,然后创建XMLfile,最后根据DTD检查XML文件是否有效declared@steevn-ypu可以运行该代码。xml和dtd文件存在于我展示的示例中使用的url处。看见