當前位置:首頁 » 安卓系統 » androidxml代碼

androidxml代碼

發布時間: 2023-12-31 17:03:02

1. Android 中有哪幾種解析 xml 的類,官方推薦哪種

在Android中提供了三種解析XML的方式:SAX(Simple API XML),DOM(Document Objrect Model),以及Android推薦的Pull解析方式.下面就對三種解析方式一一詳細闡述。

首先介紹SAX解析,SAX是事件驅動型XML解析的一個標准介面不會改變 SAX的工作原理簡單地說就是對文檔進行順序掃描,當掃描到文檔(document)開始與結束、元素(element)開始與結束、文檔(document)結束等地方時通知事件處理函數,由事件處理函數做相應動作,然後繼續同樣的掃描,直至文檔結束

下面介紹DOM解析,DOM,即對象文檔模型,它是將整個XML文檔載入內存(所以效率較低,不推薦使用),每一個節點當做一個對象

下面介紹Pull解析,是Android推薦使用,更適合移動設備,以下代碼講解
public class PulPersonService {
public List<Person> getPersons(InputStream instream) throws Exception {
List<Person> persons = null;
Person person = null;
XmlPullParser parser = Xml.newPullParser();//得到Pull解析器
parser.setInput(instream, "UTF-8");//設置下輸入流的編碼
int eventType = parser.getEventType();//得到第一個事件類型
while (eventType != XmlPullParser.END_DOCUMENT) {//如果事件類型不是文檔結束的話則不斷處理事件
switch (eventType) {
case (XmlPullParser.START_DOCUMENT)://如果是文檔開始事件
persons = new ArrayList<Person>();創建一個person集合
break;
case (XmlPullParser.START_TAG)://如果遇到標簽開始
String tagName = parser.getName();// 獲得解析器當前元素的名稱
if ("person".equals(tagName)) {//如果當前標簽名稱是<person>
person = new Person();//創建一個person
person.setId(new Integer(parser.getAttributeValue(0)));//將元素的屬性值賦值給id
}
if (person != null) {//如果person已經創建完成
if ("name".equals(tagName))//如果當前節點標記是name
person.setName(new String(parser.nextText()));
else if ("age".equals(tagName))//如果當前元素節點標記是age
person.setAge(new Short(parser.nextText()));
}
break;
case (XmlPullParser.END_TAG)://如果遇到標簽結束
if ("person".equals(parser.getName())) {//如果是person標簽結束
persons.add(person);//將創建完成的person加入集合
person = null;//並且置空
}
break;
}
eventType=parser.next();//進入下一個事件處理
}
return persons;
}

2. 如何在android的XML和java代碼中引用字元串常量

xml文件格式:
<?xml version="1.0" encoding="utf-8"?>
<resources>

<string name="rfid_mgs_error_config">Device configuration error</string>

</resources>
調用:
getString(R.string.rfid_msg_type)

熱點內容
王者榮耀安卓q區哪個英雄好拿標 發布:2024-11-29 01:56:04 瀏覽:665
網易收件伺服器怎麼填寫 發布:2024-11-29 01:52:15 瀏覽:278
螢石攝像頭激活密碼是多少 發布:2024-11-29 01:51:38 瀏覽:579
iphone如何設置像安卓動態壁紙 發布:2024-11-29 01:37:50 瀏覽:474
電腦如何避過聯網查配置 發布:2024-11-29 01:25:16 瀏覽:972
期貨軟體編程 發布:2024-11-29 01:13:16 瀏覽:834
如何下載加密pdf文件 發布:2024-11-29 01:09:21 瀏覽:326
高通android開發 發布:2024-11-29 01:09:11 瀏覽:693
xp電腦無線網密碼怎麼看密碼 發布:2024-11-29 01:08:30 瀏覽:124
戀愛劇腳本 發布:2024-11-29 00:59:58 瀏覽:575