需要作為資源讀取的XML檔案,通常放置於res/xml目錄,打包的時候將會被編譯成二進位檔案。要訪問這些xml需要用到XmlPullParser對象。
Resources res = activity.getResources(); XmlResourceParser xpp = res.getXml(R.xml.test);
這裡的XmlResourceParser就是XmlPullParser的執行個體
下面就是XmlPullParser訪問XML節點的代碼
private String getEventsFromAnXMLFile(Activity activity) throws XmlPullParserException, IOException { StringBuffer sb = new StringBuffer(); Resources res = activity.getResources(); XmlResourceParser xpp = res.getXml(R.xml.test); xpp.next(); int eventType = xpp.getEventType(); while (eventType != XmlPullParser.END_DOCUMENT) { if(eventType == XmlPullParser.START_DOCUMENT) { sb.append("******Start document"); } else if(eventType == XmlPullParser.START_TAG) { sb.append("\nStart tag "+xpp.getName()); } else if(eventType == XmlPullParser.END_TAG) { sb.append("\nEnd tag "+xpp.getName()); } else if(eventType == XmlPullParser.TEXT) { sb.append("\nText "+xpp.getText()); } eventType = xpp.next(); }//eof-while sb.append("\n******End document"); return sb.toString(); }//eof-function
這裡遍曆了整個XML文檔,並輸出節點的名稱及內容