XSD从固定文件目录批量校验XML文件
来源:互联网 发布:欧莱雅数据库营销案例 编辑:程序博客网 时间:2024/06/08 01:52
package com.google.main;import java.io.File;import java.io.IOException;import javax.xml.transform.Source;import javax.xml.transform.stream.StreamSource;import javax.xml.validation.Schema;import javax.xml.validation.SchemaFactory;import javax.xml.validation.Validator;import org.xml.sax.SAXException;public class TestXml { public static void main(String[] args) { //web中获取 classpath路径 // String classpath= Thread.currentThread().getContextClassLoader().getResource("/").getPath(); // java.net.URLDecoder.decode(xsdPath,"utf-8"); 将路径转码 // realPath=java.net.URLDecoder.decode(realPath,"utf-8"); 将路径解码 //相对路径 String xsdPath = "src/xsd/9906_统计.xsd"; //绝对路径 String filepath = "C:\\xml\\expotXML\\TJ\\201710"; //列出所有文件 getFileNameAndCheck(filepath,xsdPath); } //列出所有文件 public static void getFileNameAndCheck(String filepath,String xsdPath) { File f = new File(filepath); if (!f.exists()) { System.out.println(filepath + " 不存在"); return; } File fa[] = f.listFiles(); for (int i = 0; i < fa.length; i++) { File fs = fa[i]; if (fs.isDirectory()) { System.out.println(fs.getName() + " [是目录]"); } else { checkXml(xsdPath,fs.getAbsolutePath(),fs.getName()); } } } //校验xml public static Boolean checkXml(String xsdPath ,String xmlPath,String filename){ Boolean flag= true; try { if (validateXml(xsdPath, xmlPath)) { System.out.println(filename+" 校验通过"); } } catch (SAXException e) { flag=false; System.out.println(filename+" 校验失败"); e.printStackTrace(); } catch (IOException e) { flag=false; System.out.println(filename+" 校验失败"); e.printStackTrace(); } return flag; } 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 validator.validate(source); return true; }}
阅读全文
0 0
- XSD从固定文件目录批量校验XML文件
- 通过xsd校验xml文件
- xsd文件校验xml内容
- java 使用xsd文件 校验 xml文件
- 缺少dubbo.xsd文件引起applicationContext.xml文件校验失败
- 从class生成xsd(xml schema)文件
- eclipse自动校验xml文件是否符合dtd\xsd约束
- XSD文件与xml 文件
- xml+xsd文件保存配置文件
- 使用xsd文件验证xml
- XML Schema 及其文件.xsd
- XSD 文件 xml Schema Definition
- 让eclipse像myeclipse一样自动校验xml文件是否符合dtd或xsd约束
- XSD校验XML
- XML文件和XSD文件的关系
- XML文件和XSD文件的关系
- Python 利用 XSD 文件,解析 XML 文件
- XML文件生成XSD文件的方法
- 05-常用对象API(集合框架-迭代器使用). 1 2 07-常用对象API(集合框架-List和Set的特点) 08-常用对象API(集合框架-List集合的常见方法) 1 2
- 属于自己的技术博客开通啦。
- 自动化之路 python psutil模块 收集硬件信息
- TabLayout
- HDOJ Wooden Sticks JAVA 1051
- XSD从固定文件目录批量校验XML文件
- Android Transition——基础篇
- 32.Linux-2440下的DMA驱动(详解)
- Calendar日历对象
- Hi3518EV200平台ADC多通道采样流程
- bzoj 1004 组合数学 + burnside引理 + 逆元
- Css3的动画应用
- HQL详解一
- 09-常用对象API(集合框架-ListIterator接口) 1 2 3 4 5 10-常用对象API(集合框架-List常用子类的特点)