1

我有一个xml。我为 xml 创建了一个 XSD。

我想编写一个 prog 来针对 xsd 验证 xml。我写了一个 prog 并设置了个人值。

但是有没有办法,我可以将 xml 文件作为输入,并可以查看 xml 是否对 XSD 有效?

谢谢,妮妮

4

1 回答 1

3

这是使用 XSD 进行 xml 验证的示例。

public static boolean validate() {
    Source xmlFile = null;
    File schemaFile;
    SchemaFactory schemaFactory;
    Schema schema;
    try {
        schemaFile = new File(xsdFileName);
        xmlFile = new StreamSource(new File(xmlFileName));
        schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
        schema = schemaFactory.newSchema(schemaFile);
        Validator validator = schema.newValidator();
        validator.validate(xmlFile);
        System.out.println(xmlFile.getSystemId() + " is valid");
    } catch (SAXException | IOException e) {
        System.out.println(xmlFile.getSystemId() + " is NOT valid");
        System.out.println("Reason: " + e.getLocalizedMessage());
        return false;
    }
    return true;
}
于 2012-07-26T11:11:36.430 回答