在Java中验证XML的形式

时间:2010-09-27 22:52:54

标签: java xml

如何在Java中验证XML文件的格式?

2 个答案:

答案 0 :(得分:1)

您可以尝试“The Java XML Validation API”

http://www.ibm.com/developerworks/xml/library/x-javaxmlvalidapi.html

答案 1 :(得分:0)

只需使用验证解析器:

import javax.xml.parsers.*;

SAXParserFactory factory=SAXParserFactory.newInstance();
factory.setValidating(true);
SAXParser parser=pf.newSAXParser();

DocumentBuilderFactory有一个类似的方法。

来自JavaDoc:

  

的setValidating

     

public void setValidating(boolean validating)

     

指定此代码生成的解析器将验证文档   因为他们被解析。默认情况下   value的值设置为false。

     

请注意,“验证”在此处表示已定义的验证解析器   在XML推荐中。其他   单词,它基本上只是控制   DTD验证。 (遗产除外   JAXP 1.2中定义的两个属性。)

     

使用现代架构语言,例如W3C XML Schema或RELAX NG   而不是DTD,你可以配置你的   解析器是一个非验证解析器   通过离开setValidating(布尔值)   方法false,然后使用   要关联的setSchema(Schema)方法   解析器的模式。

     

参数:

    validating - true if the parser produced by this code will validate documents as they are parsed; false otherwise.false otherwise.