返回顶部
首页 > 资讯 > 移动开发 >Android XML解析之PULL及单元测试
  • 689
分享到

Android XML解析之PULL及单元测试

XML单元单元测试测试xml解析Android 2022-06-06 13:06:56 689人浏览 安东尼
摘要

 我也不多说直接贴代码   package com.yf.pullxmlpare; import java.io

 我也不多说直接贴代码

 

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()); } } }
 

 

 


--结束END--

本文标题: Android XML解析之PULL及单元测试

本文链接: https://lsjlt.com/news/28844.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作