⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mysaxbean.java

📁 java编程入门配套光盘第八章代码
💻 JAVA
字号:
package test;

import java.util.*;
import javax.xml.parsers.*;
import org.xml.sax.*;
import org.xml.sax.helpers.*;
import java.io.*;

public class MySAXBean extends DefaultHandler implements Serializable 
{
   private static String text=null;
   private static Vector vector = null;
   private static MyElement current = null;
   private static final String PATH="file:///";
   boolean validation = false; 

   public MySAXBean() {
   }

   public Vector doParse(String filename)
   {
   	    vector=new Vector();
   	    SAXParserFactory spf = SAXParserFactory.newInstance();
        spf.setValidating(validation);
        XMLReader parser = null;
        try {
            // 创建一个JAXP SAXParser
            SAXParser saxParser = spf.newSAXParser(); 
            // 得到封装的SAX XMLReader
            parser = saxParser.getXMLReader();
            DefaultHandler handler = new MySAXBean();
            parser.setContentHandler(handler);
            parser.setErrorHandler(handler);
            parser.parse(PATH+filename);
        }catch (Exception e) {
            e.printStackTrace(System.err);
        }
        return vector;
   }

   public void startElement (String uri, String name,String qName, Attributes atts) 
   {
      current = new MyElement(uri, name, qName, atts);
      vector.addElement(current);
      text = new String();
   }

   public void endElement (String uri, String name,String qName) 
   {
     if(current != null && text != null) 
     {
        current.setValue(text.trim());
     }
     current = null;
   }

   public void characters (char ch[], int start,int length) 
   {
     if(current != null && text != null) 
     {
        String value = new String(ch, start, length);
        text += value;
     }
   }

    public void warning(SAXParseException ex) 
    {
        System.err.println("[Warning]: "+ex.getMessage());
    }

    public void error(SAXParseException ex) 
    {
        System.err.println("[Error]: "+ex.getMessage());
    }

    public void fatalError(SAXParseException ex) throws SAXException 
    {
        System.err.println("[Fatal Error]: "+ex.getMessage());
        throw ex;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -