java xsd 校驗工具類
阿新 • • 發佈:2019-02-14
public static boolean Validatexml(String xsdpath,String xmlpath) throws SAXException,IOException{
//建立schema工廠
SchemaFactory schemaFactory=SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
//建立驗證文件檔案物件,利用此檔案物件所封裝的檔案進行schema驗證
File schemaFile=new File(xsdpath);
//利用schema工廠,接收驗證文件檔案物件生成Schema物件
Schema schema=schemaFactory.newSchema(schemaFile);
//通過Schema產生針對於此Schema的驗證器,利用schenaFile進行驗證
Validator validator=schema.newValidator();
//得到驗證的資料來源
Source source=new StreamSource(xmlpath);
//開始驗證,成功輸出success!!!,失敗輸出fail
try{
validator.validate(source);
}catch (Exception ex){
ex.printStackTrace();
return false;
}
return true;
}
測試類
boolean judge = Validatexml(xsdPath,xmlPath);
System.out.println(judge);
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}