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

📄 saxecho.java

📁 JAVA内嵌XML代码的几个小程序
💻 JAVA
字号:
package xmlp;import org.xml.sax.helpers.*;import org.xml.sax.Attributes;import static java.lang.System.out;import java.util.HashMap;import org.xml.sax.SAXException;import javax.xml.parsers.ParserConfigurationException;import java.io.IOException;import javax.xml.parsers.SAXParserFactory;import javax.xml.parsers.SAXParser;public class SAXEcho extends DefaultHandler {    StringBuffer sb=new StringBuffer();    HashMap pre=new HashMap();    @Override    public void startDocument(){        out.print("<?xml version=\"1.0\" ?>");    }    @Override    public void endElement(String uri,String localName,String qName){        String en=localName;        if(en.equals("")) en = qName;            out.print("</"+en+">");    }    @Override    public void startElement(String uri,String localName,String qName,Attributes atts){        String en=localName;        if(en.equals("")) en=qName;        out.print("<" +en);        if(sb.length()>0) {            out.println(sb.toString());            sb=new StringBuffer();        }        if(atts !=null) {            int len=atts.getLength();            for(int i=0;i<len;i++){                String an=atts.getLocalName(i);                if(an.equals("")) an=atts.getQName(i);                String u=atts.getURI(i);                String prefix=(String)pre.get(u);                if(prefix !=null) an=prefix+":" +an;                out.print(" "+an+"=\""+atts.getValue(i)+"\"");            }            out.print(">");        }    }    @Override    public void characters(char[] ch,int start,int length){        out.print(new String(ch,start,length));    }    public void startPrefixMapping(String prefix,String uri){        pre.put(uri,prefix);        String ns=" xmlns";        if(!"".equals(prefix)) ns=ns+":"+prefix;        ns=ns+"=\"" +uri+ "\"";        sb.append(ns);    }    public static void main(String[] args){        try{            SAXParserFactory spf=SAXParserFactory.newInstance();            spf.setValidating(true);            SAXParser parser=spf.newSAXParser();            DefaultHandler handler=new SAXEcho();            parser.parse(args[0],handler);        }catch(SAXException ex){            ex.printStackTrace();        }catch(ParserConfigurationException ex){            ex.printStackTrace();        }catch(IOException ex){            ex.printStackTrace();        }    }}

⌨️ 快捷键说明

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