編輯:關於Android編程
解析XML文件:
在Android平台上可以使用SAX、DOM和Android附帶的pull解析器解析XML文件;
pull解析器提供了各種事件,使用parser.next()方法進入下一個元素並觸發相應事件,pull解析器產生的事件是一個數字,可以通過switch對感興趣的事件進行處理;通過paser.nextText()方法可以獲取下一個Text類型的節點的值;
http://xmlpull.org/xmlpull-website/impls.shtml;
讀取XML
XmlPullParser pullParser = Xml.newPullParser();
pullParser.setInput(xml, "UTF-8");//為破解器添加要解析的XML數據
int event = pullParser.getEventType();//開始讀取,獲取事件返回值
pullParser.getName();//獲取節點名稱
pullParser.getAttributeValue(0);//獲取第一個屬性的值
pullParser.nextText();//獲取標簽之後的節點的內容
event = pullParser.next();//解析器遇到結束標簽不會自動向下解析,需要調用此方法進行繼續執行;
保存文件到XML
public static void save(List<Person> persons, OutputStream outStream)
throws Exception, IllegalStateException, IOException {
XmlSerializer serializer = Xml.newSerializer();//獲取XML寫入信息的序列化對象
serializer.setOutput(outStream, "UTF-8");//設置要寫入的OutputStream
serializer.startDocument("UTF-8", true);//設置文檔標簽
serializer.startTag(null, "persons");//設置開始標簽,第一個參數為namespace
for (Person person : persons) {
serializer.startTag(null, "person");
serializer.attribute(null, "id", person.getId().toString());
serializer.startTag(null, "name");
serializer.text(person.getName());
serializer.endTag(null, "name");
serializer.startTag(null, "age");
serializer.text(person.getAge().toString());
serializer.endTag(null, "age");
serializer.endTag(null, "person");
}
serializer.endTag(null, "persons");
serializer.endDocument();
outStream.flush();
outStream.close();
}
一、簡介 Android應用程序中一般都有多個Activity,在Activity中,通過調用StartActivity方法,並在該方法的參數中傳遞Intent對象,就可
最近相對來說比較閒,加上養病,所以沒事干就撸些自己之前的知識點為博客,方便自己也方便別人。1 背景之所以選擇這個知識點來分析有以下幾個原因:逛GitHub時發
動態加載資源原理通常我們調用getResources()方法獲取資源文件public Resources getResources() { return mReso
Android的UI和交互是很重要的一部分,直接影響到用戶對軟件的體驗。隨著項目經驗的積累,發現Android中動畫的運用越來越重要。本篇文章抽出了項目登錄界面中實現的第