java dtd验证xml_怎么用dom4j和本地dtd文件验证xml文档有效性

简单方法:

用编写XML的软件,比如XMLSpy、SketchPath都是有这个功能的,菜单栏上有这个选项。

DreamWeaver和Myeclipse也可以验证的。

编写程序:

用java、C++、C#等都可以做到。

比如java,用DOM、SAX、JDOM、DOM4J都可以很容易的做到。、

下面的程序是用SAX对xml进行xsd验证:

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 ValidateXML {

/**

*

*/

public ValidateXML(){

}

public 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 true;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值