- 浏览: 115937 次
- 性别:
- 来自: 厦门
最新评论
-
人可德福:
非常感谢附上源码包的楼主
实例16--心理测试 -
一口三个汉堡:
ljt122000 写道呵呵....看来大多数搞程序的被切图弄 ...
移动开发那点事-抱怨的移动开发程序员 -
ljt122000:
呵呵....看来大多数搞程序的被切图弄得有点郁闷啊...不管是 ...
移动开发那点事-抱怨的移动开发程序员 -
一口三个汉堡:
半夜透凉清 写道追求自己想要的生活,我是该羡慕你不断的走,跑, ...
今天看了自己博客的电子书,眼泪一直掉!感谢ITeye伴我成长! -
xdwangiflytek:
楼主发现自己的成长才是最可贵的
今天看了自己博客的电子书,眼泪一直掉!感谢ITeye伴我成长!
在讨论群里里面有人在问xml的解析方法,我就弄了个简单的demon来介绍我自己的方法下面的xml文件和读取的效果图
效果图:
<br><br><img src="http://dl.iteye.com/upload/attachment/557578/f233c0b6-fd25-36a8-8570-9f82b04f2000.png" alt=""><br> 主要代码
代码包:<br> xmlDemon.rar
<?xml version="1.0" encoding="utf-8"?> <tests> <test name="test_1">测试1</test> <test name="test_2">测试2</test> <test name="test_3">测试3</test> <test name="test_4">测试4</test> <test name="test_5">测试5</test> <test name="test_6">测试6</test> <test name="test_7">测试7</test> <test name="test_8">测试8</test> <test name="test_9">测试9</test> </tests>
效果图:
<br><br><img src="http://dl.iteye.com/upload/attachment/557578/f233c0b6-fd25-36a8-8570-9f82b04f2000.png" alt=""><br> 主要代码
package com.wjh.xmldemon; import java.util.ArrayList; import org.xmlpull.v1.XmlPullParser; import android.app.Activity; import android.content.Context; import android.content.res.XmlResourceParser; import android.os.Bundle; import android.widget.TextView; public class XmlDemonActivity extends Activity { /** Called when the activity is first created. */ TextView tv = null; ArrayList<Test> list = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv =(TextView)findViewById(R.id.tv); list = getXmlData(this, R.xml.test); initData(); } //初始化数据 private void initData() { StringBuffer sb = new StringBuffer(); int size = list.size(); for(int i = 0;i<size;i++) { Test test = list.get(i); sb.append("name="+test.getName()); sb.append("|"); sb.append("text="+test.getText()); sb.append("\n"); } tv.setText(sb.toString()); } //获得xml文件数据,并放回一个list public ArrayList<Test> getXmlData(Context context,int id) { ArrayList<Test> list = new ArrayList<Test>(); try { //打开文档 XmlResourceParser xml = context.getResources().getXml(id); int eventType = xml.next(); try { // 切换到下一个状态,并获得当前状态的类型 Test test = null; while ( true ) { if(test == null) { test = new Test(); } // 文档开始状态 if (eventType == XmlPullParser. START_DOCUMENT ) { } // 标签开始状态 else if (eventType == XmlPullParser. START_TAG ) { // 将标签名称和当前标签的深度(根节点的 depth 是 1 ,第 2 层节点的 depth 是 2 ,类推) switch (xml.getDepth()) { case 1: break ; case 2: //获得属性name的值 /* * <tests> <test name="test_1">测试1</test> </tests> */ //从上面可以看出test在tests下面,也是深度为2 test.setName(xml.getAttributeValue(null,"name")); break; } } // 读取标签内容状态 else if (eventType == XmlPullParser. TEXT ) { //<test name="test_1">测试1</test>获得标签中的数据 String str = xml.getText(); if(str!=null&&!str.equals("")) { test.setText(str); list.add(test); test = null; } } else if (eventType == XmlPullParser. END_TAG ) { //结束标签 } // 文档结束状态 else if (eventType == XmlPullParser. END_DOCUMENT ) { // 文档分析结束后,退出 while 循环 break ; } // 切换到下一个状态,并获得当前状态的类型 eventType = xml.next(); } } catch (Exception e) { e.printStackTrace(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } //Test类 class Test { private String name;//name属性 private String text;//内容 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getText() { return text; } public void setText(String text) { this.text = text; } } }
代码包:<br> xmlDemon.rar
发表评论
-
android-单独开启闪光灯方法--适用于moto手机
2011-10-14 10:11 6953代码来自于http://code.google.com/p/s ... -
android线性布局布局的layout_weight
2011-10-08 16:23 1686对于LinearLayout的layout_weight属性, ... -
实例17--无敌抢钱鸡
2011-09-03 21:32 1070随着转化的进行,难度也在增加,这次的实例我弄了一天,当然有 ... -
实例16--心理测试
2011-09-01 11:59 2108隔了两个月,又重新开 ... -
实例-15---猜数字
2011-06-23 23:48 1381经典游戏,猜数字。各种不解释,因为最近发生了一些事情,所以 ... -
实例14---不准+弱智的生物钟
2011-06-19 12:06 1178这个例子在java me主要是演示form的使用,在and ... -
实例13---点击速度测试机
2011-06-18 00:15 1084在原java me中通过这个例子是想要讲解RecordSt ... -
实例12--会动的地图
2011-06-16 23:00 1291前面已经出了一个展示地图的例子,这个例子主要运用了将地图的 ... -
实例11--播放按键声音
2011-06-13 11:35 7290实例11播放按键声音,在java me中有playTone ... -
实例10--不搭的跳舞机
2011-06-10 23:32 1767还是要重申一遍,因为只是转化,所以原j2me的问题,我不会 ... -
android的Sprite,TiledLayer,LayerManager
2011-06-08 10:42 3346因为android没有提供这些,而我要把j2me的一本游戏 ... -
实例9---我的地图
2011-06-08 10:18 1149实例9,在j2me中是使用了图层管理和地图图层,在andr ... -
实例8--《很幼稚的‘小’鸡快跑》
2011-06-04 22:08 1427实例8--《小鸡快跑》,原书用的是java me 提供的s ... -
实例7---android 版Sprite代码
2011-06-03 23:38 3000因为android 没有提供sp ... -
实例6--文字滚屏
2011-06-02 23:59 1115这个实例的本意展示j2me的字体,和滚屏的实现。我只实现了 ... -
实例5--自动换行(修订版)
2011-06-02 00:13 2118这个实例主要是运用字体的只是,但是android自带就几种 ... -
实例4---拼单词游戏
2011-06-01 00:02 1412这个第四个实例,我只是单纯的把j2me的代码换成andro ... -
实例3--使用surfaceView
2011-05-30 19:55 1377在那本书用的是GameCanvas,我就用surfaceVi ... -
实例2---获得按键值
2011-05-29 00:08 1176《手机游戏50例》第二个实例为将按键值显示在屏幕上,下面给出M ... -
《java手机游戏50例》转成android版。。--游戏View框架代码
2011-05-28 20:48 3617这学期我们班教j2me游戏开发,教材是《java游戏50例 ...
相关推荐
本教程将详细介绍如何在Android环境下解析XML文件,以"ReadXMLDemo"为例,展示具体步骤和关键知识点。 首先,XML(eXtensible Markup Language)是一种自定义标记语言,它的结构清晰,易于读写,适合于数据交换和...
SAX(Simple API for XML)是XML的一种解析器,它采用事件驱动的方式处理XML文档,非常适合处理大型或内存有限的设备上的XML文件,如Android手机。 SAX解析的基本原理是,当解析器读取XML文档时,遇到每个元素、...
本教程将深入探讨如何在Android应用中解析XML数据,主要聚焦于使用`Xml.newPullParser()`方法。这个方法是Android提供的一个高效的XML解析器,它支持事件驱动的解析模式,适用于处理大型XML文档。 首先,我们来理解...
老罗的Android视频教程深入浅出地讲解了如何在Android平台上解析XML文件,这对于开发者来说是非常重要的技能。以下是对这个主题的详细解释。 1. **XML基本概念** XML是一种自描述的语言,其结构清晰,易于机器和...
在Android开发中,XML文件广泛用于存储数据、配置文件以及应用程序间的数据交换。本文将深入探讨如何使用SAX、DOM和Pull解析器解析XML文件,以及如何生成XML文件。我们将同时展示Java和Kotlin两种语言的实现方法。 ...
4. 解析XML:调用解析器对XML文件进行解析,处理事件或遍历树形结构。 5. 处理解析结果:根据解析到的数据,更新UI或其他业务逻辑。 在实际项目实训中,可以创建一个名为`xmlparserdemo`的Android工程,包含XML文件...
本篇文章将深入探讨如何在Android中使用Pull解析器进行XML文件的解析和存取。 一、XML解析器简介 在Android中,有两种主要的XML解析方式:SAX(Simple API for XML)和DOM(Document Object Model)。SAX是事件驱动...
本篇将深入探讨Android中解析XML文件的方法,以及如何通过示例代码`ReadXmlConfigFile`来实现这一过程。 ### XML解析器类型 Android提供了多种解析XML的方式,主要包括以下几种: 1. **DOM解析器**:Document ...
本资料集合是"老罗"(罗升阳)关于Android视频开发的一系列教学资源,包括源码和PPT,专注于讲解如何在Android环境中解析XML文件。 首先,我们要理解XML解析的基本概念。在Android中,XML解析有两种主要方式:DOM...
本篇文章将重点讨论如何在Android中使用Pull解析器(PullParser)来解析XML文件。Pull解析器是一种事件驱动的解析方式,它允许应用程序在解析过程中按需获取XML数据,而不是一次性加载整个文档到内存,这使得处理...
本例使用多种方式获取本地XML文件,还有通过url获取XML文件,使用Android内置的PULL解析器对XML文件进行解析,例子是解析我国各个省市。 《Android解析XML文件》博文路径:...
`android-gpx-parser`是一个专为Android设计的开源库,用于解析和操作这些GPX文件,方便开发者在应用中集成GPS数据处理功能。 ### 1. GPX文件结构与内容 GPX文件基于XML结构,包含了以下主要元素: - **trkpt...
理解如何解析XML文件是至关重要的,本节将深入探讨Android中的三种XML解析方法:SAX、DOM和Pull解析。 **SAX解析** SAX(Simple API for XML)是一种基于事件驱动的解析方式,它不加载整个XML文档到内存,而是逐行...
下面我们将详细介绍如何在Android中利用SAX框架模型实现XML文件解析。 一、SAX解析器工作原理 SAX解析器在读取XML文件时,遇到元素开始、结束、属性等事件时会触发回调函数,开发者可以在这些回调函数中处理相应的...
这个项目提供了一种高效的方法来处理Android应用的国际化工作,减轻了手动编辑XML文件的压力,提高了团队协作的效率。对于涉及多语言的Android应用开发者来说,这样的工具无疑是一个实用的助手。
Android系统中的许多配置文件(如AndroidManifest.xml)、布局文件(如activity_main.xml)都是XML格式,XML Pull解析常用于读取这些文件中的数据。 通过以上内容,我们可以了解XML Pull解析的基本概念、工作原理...
SAX解析则是一种事件驱动的解析方式,它逐行读取XML文件,只处理遇到的元素,内存占用较低,适合处理大型XML文件。 本文将重点介绍SAX解析。SAX解析器遵循“读取-事件-响应”模式,当遇到XML文档的某个部分时,会...
在Android开发中,XML文件广泛用于布局设计、配置设置、数据存储等方面,因此理解XML文件的解析至关重要。本文将深入探讨两种主要的XML解析方法:DOM解析和SAX解析。 一、XML概述 XML(eXtensible Markup Language...
解析XML文件是Android开发者必须掌握的一项技能。本篇将详细介绍Android中的SAX(Simple API for XML)解析方式。 SAX是一种事件驱动的XML解析器,它不会像DOM解析器那样将整个XML文档加载到内存中,而是逐行读取,...