【发布时间】:2016-11-10 09:25:11
【问题描述】:
我正在检查 XML 文档的格式是否正确(仅检查语法)。我没有针对任何架构进行验证。 我需要使用 StAX 来做到这一点:
我知道我必须解析文件,但是如何实现检查?
XMLInputFactory factory = XMLInputFactory.newInstance();
File f = new File(uploadfileName);
FileInputStream inputStream = new FileInputStream(f);
//Instantiate a reader parsing:
XMLStreamReader reader=factory.createXMLStreamReader(inputStream);
while(reader.hasNext()){
//check to be implemented??
reader.next();
}
【问题讨论】:
-
你已经完成了。通过读取所有事件,XML 已被完整处理,因此您知道没有 XML 语法错误。如果有,就会抛出异常。 --- 仅供参考:当我说完成时,我的意思是当您关闭
inputStream时您将完成,最好使用 try-with-resources。 -
所以如果我想显式添加我自己的错误信息,我应该使用 try-catch 块吗?
-
如果在处理之前必须确保 XML 的格式正确,请在开头添加一个空传递...
标签: java xml xml-parsing stax well-formed