Android xml解析實(shí)例詳解
更新時(shí)間:2017年06月26日 10:34:28 投稿:lqh
這篇文章主要介紹了Android xml解析實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
Android xml解析實(shí)例詳解
實(shí)現(xiàn)效果圖:

XmlActivity
package com.Android.xiong.gridlayoutTest;
import android.app.Activity;
import android.content.res.XmlResourceParser;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class XmlActivity extends Activity {
private Button btn_xml;
private EditText et_xml;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_xml);
initView();
}
private void initView() {
// 初始化組件
btn_xml = (Button) findViewById(R.id.btn_xml);
et_xml = (EditText) findViewById(R.id.et_show);
}
public void xml(View v) {
// xml解析器
XmlResourceParser xrp = getResources().getXml(R.xml.books);
try {
StringBuilder sb = new StringBuilder("");
while (xrp.getEventType() != XmlResourceParser.END_DOCUMENT) {
// 如果遇到開始標(biāo)簽
if (xrp.getEventType() == XmlResourceParser.START_TAG) {
// 獲取該標(biāo)簽的簽名
String tagName = xrp.getName();
// 如果遇到book標(biāo)簽
if (tagName.equals("book")) {
// 根據(jù)屬性名來獲取屬性值
String bookName = xrp.getAttributeValue(null, "price");
sb.append("價(jià)格:");
sb.append(bookName);
// 根據(jù)屬性的索引來獲取屬性值
String bookePrice = xrp.getAttributeValue(1);
sb.append(" 出版日期: ");
sb.append(bookePrice);
sb.append("書名:");
// 獲取文本節(jié)點(diǎn)
sb.append(xrp.nextText());
}
sb.append("\n");
}
// 獲取下一個(gè)事件
xrp.next();
}
//設(shè)置字體
et_xml.setTypeface(Typeface.SERIF);
//設(shè)置字體大小
et_xml.setTextSize(30);
//設(shè)置字體顏色
et_xml.setTextColor(Color.RED);
et_xml.setText(sb.toString());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
bookx.xml
<?xml version="1.0" encoding="utf-8"?>
<books>
<book price="109.0" 出版日期="2008年">瘋狂Java講義</book>
<book price="108.0" 出版日期="2009年">輕量級(jí)JavaEE 企業(yè)應(yīng)用實(shí)戰(zhàn)</book>
<book price="79.0" 出版日期="2009年">瘋狂Ajax講義</book>
</books>
activity_xml布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn_xml"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:onClick="xml"
android:text="解析xml" />
<EditText
android:id="@+id/et_show"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="顯示解析內(nèi)容" />
</LinearLayout>
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
您可能感興趣的文章:
- Android?XML數(shù)據(jù)解析要點(diǎn)介紹
- Android中的xml解析介紹
- Android實(shí)現(xiàn)向本地寫入一個(gè)XML文件和解析XML文件
- 淺談Android Studio 解析XML的三種方法
- Android解析XML文件升級(jí)APK的方法
- Android中對(duì)xml文件解析的3種方式總結(jié)
- Android開發(fā)中解析xml文件XmlUtils工具類與用法示例
- Android編程簡(jiǎn)易實(shí)現(xiàn)XML解析的方法詳解
- Android開發(fā)筆記XML數(shù)據(jù)解析方法及優(yōu)缺點(diǎn)
相關(guān)文章
給Android初學(xué)者的Gradle知識(shí)普及
剛學(xué) Android 不久,對(duì) Gradle 不懂,看了很多資料依然一知半解,很多人都這樣覺得,表示同感,下面小編來給大家講講 Gradle相關(guān)知識(shí),需要的朋友跟隨小編一起來學(xué)習(xí)一下2018-09-09
Android中使用Intent在Activity之間傳遞對(duì)象(使用Serializable或者Parcelable)的
這篇文章主要介紹了 Android中使用Intent在Activity之間傳遞對(duì)象(使用Serializable或者Parcelable)的方法的相關(guān)資料,需要的朋友可以參考下2016-01-01
Android 大文件切割與合并的實(shí)現(xiàn)代碼
這篇文章主要介紹了Android 大文件切割與合并,實(shí)現(xiàn)了很多發(fā)文件和視頻的切割,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11

