qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          Android XML解析之PULL及單元測試

           我也不多說直接貼代碼
          package com.yf.pullxmlpare;
          import java.io.InputStream;
          import java.util.ArrayList;
          import java.util.List;
          import org.xmlpull.v1.XmlPullParser;
          import android.util.Xml;
          //package com.yf.pullxmlpare.person;
          public class PersonService {
          public static List<person> getPersons(InputStream xml) throws Exception{
          List<person> person1 = null;
          person ps=null;
          XmlPullParser PullParser = Xml.newPullParser();
          PullParser.setInput(xml, "UTF-8");
          int event = PullParser.getEventType();
          while(XmlPullParser.END_DOCUMENT != event){
          switch(event){
          case XmlPullParser.START_DOCUMENT:
          person1 = new ArrayList<person>(); //做初始化
          break;
          case XmlPullParser.START_TAG: //2
          if("person".equals(PullParser.getName())){
          int id = new Integer( PullParser.getAttributeValue(0));
          ps = new person();
          ps.setId(id);
          }
          if("name".equals(PullParser.getName())){
          String s = PullParser.nextText();
          ps.setName(s);
          }
          if("age".equals(PullParser.getName())){
          int age = new Integer( PullParser.nextText());
          ps.setAge(age);
          }
          break;
          case XmlPullParser.END_TAG:
          if("person".equals(PullParser.getName())){
          person1.add(ps);
          ps = null;
          }
          break;
          case XmlPullParser.END_DOCUMENT:
          break;
          default:
          break;
          }
          event = PullParser.next(); //移動指針向后面的元素
          }
          return person1;
          }
          }
          mainfest.xml
          <?xml version="1.0" encoding="utf-8"?>
          <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.yf.pullxmlpare"
          android:versionCode="1"
          android:versionName="1.0" >
          <uses-sdk
          android:minSdkVersion="8"
          android:targetSdkVersion="17" />
          <application
          android:allowBackup="true"
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name"
          android:theme="@style/AppTheme" >
          <activity
          android:name="com.yf.pullxmlpare.MainActivity"
          android:label="@string/app_name" >
          <intent-filter>
          <action android:name="android.intent.action.MAIN" />
          <category android:name="android.intent.category.LAUNCHER" />
          </intent-filter>
          </activity>
          <uses-library android:name="android.test.runner" />
          </application>
          <instrumentation android:targetPackage="com.yf.pullxmlpare"
          android:name="android.test.InstrumentationTestRunner"
          android:label="Testfor my app"
          />
          </manifest>


          單元測試代碼
          package testxml;
          import java.io.InputStream;
          import java.util.List;
          import com.yf.pullxmlpare.PersonService;
          import com.yf.pullxmlpare.person;
          import android.test.AndroidTestCase;
          import android.util.Log;
          public class TestXML extends AndroidTestCase {
          private final String TAG = "TestXML";
          public void testperson() throws Exception{
          InputStream xml = this.getClass().getClassLoader().getResourceAsStream("person.xml");
          List<person> ps1 = PersonService.getPersons(xml);
          for(person personx:ps1){
          Log.i(TAG, personx.toString());
          }
          }
          }

          posted on 2013-10-09 11:01 順其自然EVO 閱讀(301) 評論(0)  編輯  收藏 所屬分類: android

          <2013年10月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 湖南省| 纳雍县| 广平县| 张家界市| 平潭县| 昌江| 天等县| 万全县| 乌兰县| 淮南市| 会理县| 阿勒泰市| 垦利县| 万全县| 宜都市| 喀什市| 玉环县| 隆安县| 太白县| 石屏县| 澄城县| 洛隆县| 丰都县| 得荣县| 滨州市| 仁布县| 始兴县| 泉州市| 西乌珠穆沁旗| 枣阳市| 长子县| 庄浪县| 龙泉市| 基隆市| 梅州市| 开鲁县| 台山市| 琼结县| 青铜峡市| 孝昌县| 习水县|