Java使用SAX解析XML文件时如何处理错误?
该类ErrorHandler实现的接口org.xml.sax.helpers.DefaultHandler为SAX解析中的错误处理机制提供了一些方法。该方法是warning(),error()和fatalError()。
package org.nhooo.example.xml;import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.InputStream;
public class SAXErrorHandlerDemo {
public static void main(String[] args) throws Exception {
SAXErrorHandlerDemo demo = new SAXErrorHandlerDemo();
demo.run();
}
public void run() throws Exception {
// 创建SAXParserFactory和SAXParser实例。
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
// 使用MySAXHandler解析error.xml文件
// DefaultHandler实现。
InputStream is = getClass().getResourceAsStream("/error.xml");
DefaultHandler handler = new MySAXHandler();
parser.parse(is, handler);
}
// 覆盖由ErrorHandler定义的错误处理方法
//接口。此方法将处理由
// 解析过程。
class MySAXHandler extends DefaultHandler {
@Override
public void warning(SAXParseException e) throws SAXException {
System.out.println("warning : " + e.getMessage());
}
@Override
public void error(SAXParseException e) throws SAXException {
System.out.println("error : " + e.getMessage());
}
@Override
public void fatalError(SAXParseException e) throws SAXException {
System.out.println("fatalError: " + e.getMessage());
}
}
}
以上是 Java使用SAX解析XML文件时如何处理错误? 的全部内容, 来源链接: utcz.com/z/360927.html