Android XML數(shù)據(jù)解析簡(jiǎn)單示例
1、創(chuàng)建XML數(shù)據(jù)
在android工程目錄中res/目錄下創(chuàng)建raw文件夾,在raw文件夾內(nèi)創(chuàng)建data.xml。
<?xml version="1.0" encoding="utf-8"?>
<data>
<class>
<c studentNum="1">Android</c>
<c studentNum="2">IPhone</c>
</class>
</data>
2、XML解析代碼
import java.io.IOException;
import java.io.InputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import android.os.Bundle;
import android.app.Activity;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InputStream is = getResources().openRawResource(R.raw.data);
try {
byte[] bytes = new byte[is.available()];
is.read();
String XMLStr = new String(bytes,"utf-8");
is.reset();
System.out.println(XMLStr);
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document doc = builder.parse(is);
Node node = doc.getFirstChild();
System.out.println("第一個(gè)子節(jié)點(diǎn)"+node.getNodeName());
NodeList list = doc.getElementsByTagName("c");
NamedNodeMap map;
for(int i = 0; i < list.getLength(); i++)
{
node = list.item(i);
map = node.getAttributes();
System.out.println(node.getTextContent()+" studentNum "+map.getNamedItem("studentNum").getNodeValue());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
- AndroidManifest.xml配置文件解析
- android通用xml解析方法
- 基于Android XML解析與保存的實(shí)現(xiàn)
- Android中使用sax解析xml文件的方法
- Android解析服務(wù)器端發(fā)來(lái)的xml數(shù)據(jù)示例
- Android中使用PULL方式解析XML文件深入介紹
- Android開(kāi)發(fā)之XML文件解析的使用
- Android提高之XML解析與生成實(shí)例詳解
- Android中使用pull解析器操作xml文件的解決辦法
- Android使用Pull解析器解析xml文件的實(shí)現(xiàn)代碼
- android開(kāi)發(fā)基礎(chǔ)教程—三種方式實(shí)現(xiàn)xml文件解析
- android編程之XML文件解析方法詳解(附源碼)
- Android基于Pull方式解析xml的方法詳解
相關(guān)文章
Rxjava+Retrofit+Okhttp進(jìn)行網(wǎng)絡(luò)訪問(wèn)及數(shù)據(jù)解析
這篇文章主要介紹了Rxjava+Retrofit+Okhttp進(jìn)行網(wǎng)絡(luò)訪問(wèn)及數(shù)據(jù)解析,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-08-08
MVVMLight項(xiàng)目Model?View結(jié)構(gòu)及全局視圖模型注入器
這篇文章主要為大家介紹了MVVMLight項(xiàng)目中Model及View的結(jié)構(gòu)及全局視圖模型注入器的使用說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-01-01
Android基于OkHttpUtils網(wǎng)絡(luò)請(qǐng)求的二次封裝
這篇文章主要介紹了Android基于OkHttpUtils網(wǎng)絡(luò)請(qǐng)求的二次封裝,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Kotlin協(xié)程之Flow觸發(fā)與消費(fèi)示例解析
Kotlin協(xié)程中,當(dāng)需要消費(fèi)流時(shí),會(huì)調(diào)用collect方法,觸發(fā)流的消費(fèi),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09
Android自定義View實(shí)現(xiàn)游戲搖桿鍵盤(pán)的方法示例
Android進(jìn)階過(guò)程中有一個(gè)繞不開(kāi)的話題——自定義View。最近在做項(xiàng)目中又遇到了,所以下面這篇文章主要給大家介紹了利用Android自定義View實(shí)現(xiàn)游戲搖桿鍵盤(pán)的相關(guān)資料,操作方式類似王者榮耀的搖桿操作,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面來(lái)一起看看吧。2017-07-07
Android AutoCompleteTextView自動(dòng)提示文本框?qū)嵗a
這篇文章主要介紹了Android AutoCompleteTextView自動(dòng)提示文本框?qū)嵗a的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
EditText監(jiān)聽(tīng)方法,實(shí)時(shí)的判斷輸入多少字符
在EditText提供了一個(gè)方法addTextChangedListener實(shí)現(xiàn)對(duì)輸入文本的監(jiān)控。本文分享了EditText監(jiān)聽(tīng)方法案例,需要的朋友一起來(lái)看下吧2016-12-12
Android UI控件之ImageSwitcher實(shí)現(xiàn)圖片切換效果
這篇文章主要為大家詳細(xì)介紹了Android UI控件之ImageSwitcher實(shí)現(xiàn)圖片切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12

