android 操作xml

来源:互联网 发布:智商和情商 知乎 编辑:程序博客网 时间:2024/06/11 15:55

    在android平台下操作xml方式有很多种,常见的为SAX(Simple APIfor XML)和DOM(Document Object Model)。

今天总结下SAX的操作。

    SAX操作xml的特点是当读取xml文件的时候会随时触发事件,通过事件来处理当前读取到的内容。这一点是跟dom有所不同的,dom是全部读取完后在进行操作。

    首先这个事件是哪来的。要怎么让SAX才能知道这个事件,怎么触发他。

    这里我们就要自己写个类来继承自ContentHandler。并且重写里面的几个重要方法,分别为:startDocumentstartElementcharactersendElementendDocument,从方法名就能看出来大概作用。

   

    主要处理的就是startElementcharacters。代码如下:

 

     DefaultHandler实现了ContentHandler,因此用DefaultHandler也是一个效果。至于为什么,DefaultHandler里面的方法少,不像ContentHandler那么多。做简单的xml操作已经足够,要是做复杂的操作,就得继承ContentHandler

 

     具体处理的代码已经实现,下面来看看,从Activity的调用及实现。具体代码如下:

 

运行程序,最后LogCat打印日志如下:

11-05 05:33:17.310: INFO/System.out(258): startReadDocument....
11-05 05:33:17.331: INFO/System.out(258): id=1
11-05 05:33:17.341: INFO/System.out(258): name=zhang san feng
11-05 05:33:17.350: INFO/System.out(258): age=102
11-05 05:33:17.371: INFO/System.out(258): phone=110
11-05 05:33:17.371: INFO/System.out(258): id=2
11-05 05:33:17.371: INFO/System.out(258): name=li si jun
11-05 05:33:17.401: INFO/System.out(258): age=56
11-05 05:33:17.411: INFO/System.out(258): phone=120
11-05 05:33:17.421: INFO/System.out(258): endReadDocument


  在android平台下,用SAX的方式操作xml还是比较多。

原创粉丝点击