config.xml文件如下:

<config> <string-array name = "system_app_ti60"> <item>Browser.apk</item> <item>Phone.apk</item> <item>Contact.apk</item> <item>Settings.apk</item> <item>Gmail.apk</item> </string-array> </config>

用到的几个主要的类:


import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.parsers.SAXParserFactory;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.ParserConfigurationException;

XmlParser类:主要用于处理读取到的数据,如标签,文本等信息。

private class XmlParser extends DefaultHandler { private ArrayList<String> array = new ArrayList<String>(); String mName = null; private boolean mFound = false; public ArrayList<String> getArrayString(){ return array; } //读取到开始标签信息时回调 @Override public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException{ if(localName.equals("string-array")){ mName = attributes.getValue(0); if(mName.equals("system_app_ti60")){ mFound = true; } } } //读取到文本信息时回调 @Override public void characters(char ch [ ], int start, int length) throws SAXException{ if(mFound){ String value = new String(ch,start,length); if(!value.endsWith("apk")) return; array.add(value); } } //读取到结束标签信息时回调 @Override public void endElement(String uri, String localName, String qName) throws SAXException{ if(localName.equals("string-array")){ if(mFound){ mFound = false; } } } }

调用测试:

try{ SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser parser = factory.newSAXParser(); XmlParser handler = new XmlParser(); parser.parse(new File("/system_extend/system_extend_config.xml"), handler); AppList = handler.getArrayString(); } catch(SAXException e){ Log.i("hxd","SAXException"); return; } catch(ParserConfigurationException e){ Log.i("hxd","ParserConfigurationException"); return; } catch(IOException e){ Log.i("hxd","IOException"); return; } }

更多相关文章

  1. Android小程序之个人信息管理系统
  2. Android中获取系统内存信息以及进程信息-----ActivityManager的
  3. 如何取得android手机网络信息
  4. android获取SIM卡信息和手机号码
  5. android获取联系人信息
  6. Android 获取Contacts 联系人 姓名 号码 照片信息
  7. Android保存Log信息到本地文件
  8. 【android build】 如何在android.mk中获得打印信息
  9. android 获取设备Id等信息

随机推荐

  1. Android修改音量
  2. Android修改、设置锁屏密码
  3. Android(安卓)状态栏的沉浸式轮播图
  4. 移植Android(安卓)遇到的问题
  5. android MediaPlayer+Stagefright架构(音
  6. android EditText文本改变监听和获取到焦
  7. Android(安卓)- ToDoList 详解
  8. Android(安卓)实现文件分享功能(共享多个
  9. Android接收和发送短信的实现代码
  10. Android(安卓)ScrollView嵌套ListView或