下面使用xsd校验xml
public class XmlValidator { private static String errorMsg; public static boolean check(String xmlFile, String xsdFile){ boolean rs = false; rs = checkXSDFormat(xmlFile, xsdFile); return rs; } /** * 校验 */ private static boolean checkXSDFormat(String xmlFile, String xsdFile) { SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema"); XSDErrorHandler errorHandler = new XSDErrorHandler(); Validator validator = null; try { Schema schema = factory.newSchema(new File(xsdFile)); validator = schema.newValidator(); validator.setErrorHandler(errorHandler); } catch (SAXParseException e) { errorMsg = e.getMessage(); return false; } catch (SAXException e) { errorMsg = e.getMessage(); return false; } FileInputStream fis = null; try { fis = new FileInputStream(xmlFile); validator.validate(new StreamSource(fis));//new File(this.xmlFile))); } catch (SAXException e) { errorMsg = e.getMessage(); return false; } catch (IOException e) { errorMsg = e.getMessage(); return false; } finally { if(fis != null){ try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } } if(errorHandler.getError() != null){ errorMsg = errorHandler.getError(); return false; } return true; } public static String getError() { return errorMsg; } }
测试
public class XmlValidate { private static String xmlFile = "xml文件路径"; private static String xsdFile = "对应的xsd文件路径"; public static void main(String[] args) { System.out.println(XmlValidator.check(xmlFile, xsdFile)); System.out.println(XmlValidator.getError()); } }
相关推荐
需要其它工具包的朋友可以留下邮箱,我传其它包
可以根据XSD校验XML规则
接下来,我们来看看如何使用DOM4J来解析和校验XML文档。DOM4J提供了一种简单的方法来加载XML和XSD文件,然后使用Schema类进行校验。以下是一个基本的步骤概述: 1. 加载XSD文件:使用DOM4J的DocumentHelper类的...
在标题“利用xsd校验xml”中,我们讨论的核心是通过XML Schema(XSD)来验证XML文档是否符合预定义的模式。这个过程是确保XML数据有效性和正确性的重要步骤,特别是当XML被用作数据交换或者在复杂的系统间通信时。 ...
3. **校验XML**:当使用Castor的`unmarshal()`方法解析XML时,如果启用了XSD校验,Castor会自动检查XML是否符合指定的XSD。如果XML不符合规范,Castor将抛出`MarshalException`。 4. **异常处理**:在代码中,需要...
在实际应用中,XML验证器不仅限于Delphi7,其他编程环境如Java、C#等也有类似的功能。理解XML Schema和如何进行验证是任何处理XML数据的开发者必须掌握的基本技能。同时,对于大型项目,良好的XML数据验证机制也是...
### Java通过XML Schema校验XML #### 背景与挑战 XML(可扩展标记语言)作为一种标准的数据交换格式,在Web服务、配置文件以及其他多种应用领域有着广泛的应用。随着XML的普及,对于XML数据有效性的校验变得越来越...
这一步骤可能涉及到XPath或XSLT,尽管这些不是JSoup内置的功能,但可以通过集成其他Java XML库(如JAXB或DOM4J)实现。 4. **转化结果为HTML**:最后,校验的结果可能以HTML的形式呈现,以便用户能以友好的格式查看...
- **XSD(XML Schema Definition)校验**:通过XSD文件来校验XML文档的结构和内容是否符合预期。 - **Relax NG校验**:使用Relax NG语法来校验XML文档的结构。 - **Schematron校验**:通过Schematron规则来校验XML...
除了XSD转Java,有些工具还支持直接将XML文件转换为Java对象。这个过程涉及到XML解析,通常使用DOM(Document Object Model)、SAX(Simple API for XML)或者StAX(Streaming API for XML)等解析器。解析器读取XML...
参数`a.xml`是输入的XML文件,这个文件可能包含了XML文档结构的信息,`a.xsd`则是输出的XSD文件,即我们希望生成的目标校验文件。 TRANG的工作原理是解析输入的XML文件,分析其结构,然后生成对应的XSD文件。这样...
在Java中,XML Schema(XSD)用于定义和验证XML文档的结构和数据类型,确保文档遵循特定的规范。XML Schema文档使用XML语法定义了一系列规则,这些规则描述了有效XML文档应该具有的元素、属性、数据类型以及它们之间...
标题中的“xsd通过java验证科学计数法”指的是使用XML Schema Definition (XSD) 文件来校验XML文档中科学计数法的正确性,并通过Java编程语言实现这一过程。XSD是XML的一种标准,用于定义XML文档的结构和数据类型,...
在这个方法中,我们可以使用Java的XML解析库,如JAXB或DOM,结合定义好的XSD文件来验证XML配置。如果XML文件不符合XSD规范,这个方法应该抛出异常,从而停止解析过程并给出错误信息。 为了检测XML文件的验证模式,...
// 解析并校验XML文件 MyXmlElement element = (MyXmlElement) unmarshaller.unmarshal(new File("path_to_your_xml.xml")); System.out.println("XML文件校验成功"); } catch (JAXBException | SAXException e...
在Java环境中,你可以通过运行这个JAR文件,将待验证的XML文档和对应的XSD文件作为参数传递,来实现XML的校验。使用命令行,其基本形式可能是: ``` java -jar xmlValidate.jar test.xml test.xsd ``` 如果XML文档...
3. **验证内容**:可以随时通过“验证”操作验证内容是否符合Schematron 1.5 XSD模式。 4. **外部验证**:另一种验证方法是使用“外部验证”操作,选择`schematron1-5-schema.sch`作为Schematron模式进行验证。 ![]...
通过创建`SchemaFactory`,加载XSD文件,然后使用`Validator`对XML文档进行校验。 5. **StAX(Streaming API for XML)**:与SAX类似,StAX也是事件驱动的,但提供了更底层的控制。`javax.xml.stream`包提供了StAX...
在Dubbo中,`dubbo.xsd`文件是一个重要的组成部分,它是Dubbo配置的XML Schema定义文件,用于验证和解析Dubbo的XML配置文件,确保配置的正确性和规范性。 `dubbo.xsd`包含了一系列Dubbo服务的元素和属性定义,这些...
Java API for XML Processing (JAXP) 是Java处理XML的标准接口,其中的DocumentBuilderFactory和SchemaFactory类可以用来创建XML文档对象和XSD对象,然后通过Validator进行校验。 在“telephoneimj”这个特定场景下...