zoukankan      html  css  js  c++  java
  • sax技术操作xml

    package com.xml.zh;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;
    import org.xml.sax.*;
    import org.xml.sax.SAXException;
    import org.xml.sax.helpers.DefaultHandler;
    public class SaxTest {
        /**
         * 运用Sax技术来操作xml
         * @param args
         * @throws SAXException 
         * @throws Exception 
         */
        public static void main(String[] args) throws Exception{
            // TODO Auto-generated method stub
            //1.创建SaxparseFactory
            SAXParserFactory spf =SAXParserFactory.newInstance();
            //2.创建Saxparser解析器
            SAXParser saxparser = spf.newSAXParser();
            //3.把xml文件的事件处理对象关联
            saxparser.parse("src/class.xml",new defaultHander());
        }
    }
    //定义事件处理类
    class defaultHander extends DefaultHandler{
        boolean isName=false;
        //发现文档的文本
        @Override
        public void characters(char[] ch, int start, int length)
                throws SAXException {
            // TODO Auto-generated method stub
            //遍历某一个元素的文本
            if(!new String(ch,start,length).trim().equals("") && isName)
                System.out.println(new String(ch,start,length));
            //遍历
            //System.out.println(new String(ch,start,length));
            super.characters(ch, start, length);
        }
        //发现文档的结束
        @Override
        public void endDocument() throws SAXException {
            // TODO Auto-generated method stub
            super.endDocument();
        }
        //发现文档的一个元素的结束
        @Override
        public void endElement(String uri, String localName, String qName)
                throws SAXException {
            // TODO Auto-generated method stub
            super.endElement(uri, localName, qName);
        }
        //发现文档的开始
        @Override
        public void startDocument() throws SAXException {
            // TODO Auto-generated method stub
            super.startDocument();
        }
        //发现xml文档的一个元素开始
        @Override
        public void startElement(String uri, String localName, String qName,
                Attributes attributes) throws SAXException {
            // TODO Auto-generated method stub
            //System.out.println("name = "+qName);
            if(qName.equals("mingzi")){
                isName = true;
            }else{
                isName = false;
            }
            super.startElement(uri, localName, qName, attributes);
        }
    }
  • 相关阅读:
    Json-lib使用 转载
    利用PinYin4j 实现List中的对象按数字,字母, 汉字排序
    web 模板 类似京东左侧的导航栏
    常见挂马方式
    JS挂马攻防
    代码中的202.102.100.100
    利用Jquery获取、设置iframe中元素
    [PHP]基本排序(冒泡排序、快速排序、选择排序、插入排序、二分法排序)
    js验证输入的金钱格式
    js获取当前对象的颜色判断改变颜色
  • 原文地址:https://www.cnblogs.com/shaoshao/p/3304388.html
Copyright © 2011-2022 走看看