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開發(fā)之XML文件解析的使用
- Android提高之XML解析與生成實(shí)例詳解
- Android中使用pull解析器操作xml文件的解決辦法
- Android使用Pull解析器解析xml文件的實(shí)現(xiàn)代碼
- android開發(fā)基礎(chǔ)教程—三種方式實(shí)現(xiàn)xml文件解析
- android編程之XML文件解析方法詳解(附源碼)
- Android基于Pull方式解析xml的方法詳解
相關(guān)文章
Android開發(fā)實(shí)現(xiàn)Gallery畫廊效果的方法
這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)Gallery畫廊效果的方法,結(jié)合具體實(shí)例形式分析了Android使用Gallery實(shí)現(xiàn)畫廊功能的具體操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-06-06Android Jetpack架構(gòu)組件 ViewModel詳解
這篇文章主要介紹了Android Jetpack架構(gòu)組件 ViewModel詳解,ViewModel類讓數(shù)據(jù)可在發(fā)生屏幕旋轉(zhuǎn)等配置更改后繼續(xù)存在,ViewModel類旨在以注重生命周期的方式存儲(chǔ)和管理界面相關(guān)的數(shù)據(jù)。感興趣可以來(lái)學(xué)習(xí)一下2020-07-07Android布局之絕對(duì)布局AbsoluteLayout詳解
這篇文章主要為大家詳細(xì)介紹了Android布局之絕對(duì)布局AbsoluteLayout的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10Android編程實(shí)現(xiàn)應(yīng)用程序開機(jī)自啟動(dòng)的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)應(yīng)用程序開機(jī)自啟動(dòng)的方法,涉及Android權(quán)限控制及廣播操作相關(guān)技巧,需要的朋友可以參考下2017-02-02Android?Studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器App?(Java語(yǔ)言版)
這篇文章主要為大家詳細(xì)介紹了Android?Studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器App,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05Android Studio導(dǎo)入項(xiàng)目不支持的兩種解決方式
這篇文章主要介紹了Android Studio導(dǎo)入項(xiàng)目不支持的兩種解決方式,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11android使用webwiew載入頁(yè)面使用示例(Hybrid App開發(fā))
Hybrid App 融合 Web App 的原理就是嵌入一個(gè)WebView組件,可以在這個(gè)組件中載入頁(yè)面,相當(dāng)于內(nèi)嵌的瀏覽器,下面是使用示例2014-03-03