📄 errorprocessor.java
字号:
package myexample;
import java.io.FileInputStream;
import java.io.IOException;
import org.xml.sax.*;
import org.xml.sax.helpers.*;
public class ErrorProcessor extends DefaultHandler
{
public void warning(SAXParseException ex) throws SAXException
{
System.err.println("[Warning] "+getLocationString(ex)+": "+ex.getMessage());
}
public void error(SAXParseException ex) throws SAXException
{
System.err.println("[Error] "+ex.getLineNumber()+": "+ex.getMessage());
}
public void fatalError(SAXParseException ex) throws SAXException
{
System.err.println("[Fatal Error] "+getLocationString(ex)+": "+ex.getMessage());
}
private String getLocationString(SAXParseException ex)
{
StringBuffer str = new StringBuffer();
String publicId = ex.getPublicId();
if (publicId != null)
{
str.append(publicId);
str.append(" ");
}
String systemId = ex.getSystemId();
if (systemId != null)
{
str.append(systemId);
str.append(':');
}
str.append(ex.getLineNumber());
str.append(':');
str.append(ex.getColumnNumber());
return str.toString();
}
public void endElement(String uri,String localName,String qName) throws SAXException
{
System.out.println("</"+qName+">");
}
public static void main(String[] args)
{
try
{
//利用XMLReaderFactory工厂类,创建XMLReader对象。
XMLReader xmlReader=XMLReaderFactory.createXMLReader();
//打开解析器的验证功能。
xmlReader.setFeature("http://xml.org/sax/features/validation",true);
ErrorProcessor ep=new ErrorProcessor();
xmlReader.setErrorHandler(ep);
xmlReader.setContentHandler(ep);
InputSource is=new InputSource(new FileInputStream("students.xml"));
xmlReader.parse(is);
}
catch(SAXException e){System.out.println(e.toString());}
catch(IOException e){System.out.println(e.toString());}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -