成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Android中怎么使用pull方式解析xml格式文件

這篇文章將為大家詳細(xì)講解有關(guān)Android中怎么使用pull方式解析xml格式文件,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

成都創(chuàng)新互聯(lián)是一家專業(yè)提供河西企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、HTML5建站、小程序制作等業(yè)務(wù)。10年已為河西眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。

具體如下:

<?xml version="1.0" encoding="UTF-8"?>
<persons>
 <person id="01">
   <name>will</name>
   <age>21</age>
 </person>
 <person id="02">
   <name>will2</name>
   <age>22</age>
 </person>
</persons>

下面就來寫一個解析xml的類,解析的流程如下

(1)取得pull解析器
(2)設(shè)置解析器的輸入流
(3)產(chǎn)生第一個事件
(4)開始解析
(5)解析結(jié)束

package org.lxh.impl;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.lxh.vo.Person;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import android.util.Log;
import android.util.Xml;
public class Parse2 {
 public List<Person> getPersons(InputStream in) throws Throwable{
   Person p=null;
   List<Person> persons=null;
   XmlPullParser parser=Xml.newPullParser();
   parser.setInput(in, "UTF-8");
   int event=parser.getEventType();//產(chǎn)生第一個事件
   while(event!=XmlPullParser.END_DOCUMENT){ //如果不是文檔結(jié)束事件
     switch(event){
      case XmlPullParser.START_DOCUMENT:
        persons=new ArrayList<Person>(); //在文檔的開始實例化集合
        break;
      case XmlPullParser.START_TAG:
        String name=parser.getName();//取得當(dāng)前解析器指向的元素名稱
        if("person".equals(name)){
          p=new Person();
          p.setId(parser.getAttributeValue(0));
        }
        if(p!=null){
          if("name".equals(name)){
            p.setName(parser.nextText()); //取得當(dāng)前解析器指向的下一個元素的文本節(jié)點(diǎn)
          }
          if("age".equals(name)){
            p.setAge(Integer.parseInt(parser.nextText()));
          }
        }
        break;
      case XmlPullParser.END_TAG:
        if("person".equals(parser.getName())){ //person標(biāo)簽結(jié)束就把數(shù)據(jù)存入集合
          persons.add(p);
          //p=null;
        }
        break;
     }
     event=parser.next();
   }
   return persons;
 }
}

這樣的解析比起sax應(yīng)該比較簡單了,單元測試也用昨天那個只是少做了修改。下面看一下效果截圖

Android中怎么使用pull方式解析xml格式文件

關(guān)于Android中怎么使用pull方式解析xml格式文件就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

當(dāng)前名稱:Android中怎么使用pull方式解析xml格式文件
文章路徑:http://jinyejixie.com/article8/ggioip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)網(wǎng)站營銷、定制網(wǎng)站、品牌網(wǎng)站建設(shè)云服務(wù)器、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
潢川县| 嘉祥县| 集安市| 普陀区| 武宣县| 故城县| 柳林县| 桑植县| 新龙县| 崇文区| 平昌县| 昌邑市| 独山县| 恩施市| 桑植县| 柳河县| 黄骅市| 丹江口市| 南和县| 丹寨县| 建瓯市| 徐水县| 凤凰县| 青阳县| 东乡| 措美县| 九江市| 兴文县| 会理县| 兰坪| 监利县| 万盛区| 斗六市| 永和县| 吉安市| 文成县| 鸡东县| 泗洪县| 邯郸市| 武威市| 平武县|