SAX解析器所有事件显示 : SAX « XML « Java 教程

En
Java 教程
1. 语言基础
2. 数据类型
3. 操作符
4. 流程控制
5. 类定义
6. 开发相关
7. 反射
8. 正则表达式
9. 集合
10. 线
11. 文件
12. 泛型
13. 本土化
14. Swing
15. Swing事件
16. 二维图形
17. SWT
18. SWT 二维图形
19. 网络
20. 数据库
21. Hibernate
22. JPA
23. JSP
24. JSTL
25. Servlet
26. Web服务SOA
27. EJB3
28. Spring
29. PDF
30. 电子邮件
31. 基于J2ME
32. J2EE应用
33. XML
34. 设计模式
35. 日志
36. 安全
37. Apache工具
38. 蚂蚁编译
39. JUnit单元测试
Java
Java 教程 » XML » SAX 
33. 1. 1. SAX解析器所有事件显示
import java.io.File;
import java.io.IOException;

import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class TrySAX extends DefaultHandler {
  public static void main(String args[]) {
    if (args.length == 0) {
      System.out.println("No file to process. Usage is:" "\njava TrySAX <filename>");

      return;
    }
    File xmlFile = new File(args[0]);
    handler = new TrySAX();
    handler.process(xmlFile);
  }

  private void process(File file) {
    SAXParserFactory spf = SAXParserFactory.newInstance();
    spf.setNamespaceAware(true);
    spf.setValidating(true);
    System.out.println("Parser will " (spf.isNamespaceAware() "" "not ")
        "be namespace aware");
    System.out.println("Parser will " (spf.isValidating() "" "not ""validate XML");
    try {
      parser = spf.newSAXParser();
      System.out.println("Parser object is: " + parser);
    catch (SAXException e) {
      e.printStackTrace(System.err);
      System.exit(1);
    catch (ParserConfigurationException e) {
      e.printStackTrace(System.err);
      System.exit(1);
    }
    System.out.println("\nStarting parsing of " + file + "\n");
    try {
      parser.parse(file, this);
    catch (IOException e) {
      e.printStackTrace(System.err);
    catch (SAXException e) {
      e.printStackTrace(System.err);
    }
  }

  public void startDocument() {
    System.out.println("Start document: ");
  }

  public void endDocument() {
    System.out.println("End document: ");
  }

  public void startElement(String uri, String localName, String qname, Attributes attr) {
    System.out.println("Start element: local name: " + localName + " qname: " + qname + " uri: "
        + uri);
  }

  public void endElement(String uri, String localName, String qname) {
    System.out.println("End element: local name: " + localName + " qname: " + qname + " uri: "
        + uri);
  }

  public void characters(char[] ch, int start, int length) {
    System.out.println("Characters: " new String(ch, start, length));
  }

  public void ignorableWhitespace(char[] ch, int start, int length) {
    System.out.println("Ignorable whitespace: " new String(ch, start, length));
  }

  private static TrySAX handler = null;

  private SAXParser parser = null;
}
33. 1. SAX
33. 1. 1. SAX解析器所有事件显示
33. 1. 2. SAX Error Checking: A Simple Implementation of the ErrorHandler Interface
33. 1. 3. XMLReader接口
33. 1. 4. A Program to Display the Input from a SAX Parser: subclass ContentHandler
33. 1. 5. A Class to Convert SAX Parse Information into an XML Document
33. 1. 6. 内容句柄输出排序名单
33. 1. 7. SAX解析器遍历一个DOM文档
33. 1. 8. Intercepting All Accesses to External Entities During XML SAX Parsing
33. 1. 9. SAX分析器执行访问
33. 1. 10. SAX分析器异常
33. 1. 11. 用简单的SAX文件句柄分析XML
33. 1. 12. 配置SAX解析器工厂,候补解析器
33. 1. 13. 使用XML查询分析器显示当前位置
33. 1. 14. 调用。NET Web服务
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.