xml是安卓使用的吗(新手使用android的XML(DOM)解析问题,指定路径XML如何读取)

2024-07-23 02:53:52 4

xml是安卓使用的吗(新手使用android的XML(DOM)解析问题,指定路径XML如何读取)

本文目录

新手使用android的XML(DOM)解析问题,指定路径XML如何读取

一、在Android应用中的XML文件来源1、本地xml文件 本地XML文件可以放在应用根目录assets文件夹、res/xml、res/raw、SDcard卡、应用的data目录等;除res/xml可直接通过getXml(int id)获取XML文档,返回一个解析器对象(XmlResourceParer:XmlResourceParer是XmlPullParser的子类),其它位置情况都可以获取XML文档,返回一个Inputstream对象,进行读取数据,获取方法分别如下:a.在res/xml目录下(推荐使用): view plaincopyXmlResourceParser xmlParser = this.getResources().getXml(R.xml.XXX); b.在res/xml、res/raw目录下: view plaincopyInputStream inputStream = this.getResources().openRawResource(R.xml.XXX); c.在assets文件夹下(本人测试发现通过此方法获取的XML文档不能带有首行:《?xml version="1.0" encoding="utf-8"?》,否则解析报错,具体原因未查明,知道原因请回复交流): view plaincopyInputStream inputStream = getResources().getAssets().open(fileName); d.在应用指定目录下(SDcard,应用data目录等): view plaincopy// path路径根据实际项目修改,此次获取SDcard根目录 String path = Environment.getExternalStorageDirectory().toString(); File xmlFlie = new File(path+fileName); InputStream inputStream = new FileInputStream(xmlFlie); 2、通过url得到的xml文件 很多时候需要解析xml文件都用于客户端与服务器之间的数据交互,比如解析google天气预报信息,或自己项目内定的一些XML数据结构,其中通过URL,使用DefaultHTTPClient get请求获取XML文件方法如下: view plaincopy/** * 读取url的xml资源 转成String * @param url * @return 返回 读取url的xml字符串 */ public String getStringByUrl(String url) { String outputString = ""; // DefaultHttpClient ***隐藏网址*** // HttpGet ***隐藏网址*** // ResponseHandler ResponseHandler《String》 responseHandler = new BasicResponseHandler(); try { ***隐藏网址*** outputString = new String(outputString.getBytes("ISO-8859-1"), "utf-8"); // 解决中文乱码 Log.i("HttpClientConnector", "连接成功"); } catch (Exception e) { Log.i("HttpClientConnector", "连接失败"); e.printStackTrace(); } ***隐藏网址*** return outputString; } 二、XML文件的解析方式 能够运用在Android系统上解析XML文件的常用有三种方式:DOM、SAX和PULL,其中DOM解析XML是先把XML文件读进内存中,再通过接口获取数据,该方法使用相对小的XML文件,移动设备往往受硬件性能影响,如果XML文件比较大使用DOM解析往往效率跟不上;SAX和PULL都是采用事件驱动方式来进行解析,在Android中的事件机制是基于回调函数。 本例旨在考虑简单方便性,综合考虑选择了PULL解析,PULL解析器是一个开源项目,Android平台已经内置了PULL解析器,同时Android系统本身也是使用PULL解析器来解析各种XML文档。 1、事件回调类型 PULL解析XML文件时,回调XmlResourceParser内定义表示文档开头结束和节点开头结束的数值(事件回调类型),表示如下:a.读取到XML文档开头(声明)返回:XmlPullParser.START_DOCUMENT(0)b.读取到XML文档结束返回:XmlPullParser.END_DOCUMENT (1)c.读取到XML节点开始返回:XmlPullParser.START_TAG (2)d.读取到XML节点结束返回:XmlPullParser.END_TAG (3)e.读取到XML文本返回:XmlPullParser.TEXT (4) 2、XmlPullParser有几个主要方法(更多查阅Android APIs):a.XmlPullParser.getEventType() : Returns the type of the current event (START_TAG, END_TAG, TEXT, etc.) 【获取当前事件回调类型】b.XmlPullParser.getName():For START_TAG or END_TAG events, the (local) name of the current element is returned when namespaces are enabled.【获取当前节点名字】c.XmlPullParser.getAttributeValue(int index):Returns the given attributes value.【根据id获取节点属性值】d.XmlPullParser.getAttributeValue(String namespace, String name):Returns the attributes value identified by namespace URI and namespace localName.【根据name获取节点属性值】e.XmlPullParser.netxText():If current event is START_TAG then if next element is TEXT then element content is returned or if next event is END_TAG then empty string is returned, otherwise exception is thrown.【回调节点START_TAG时,通过此方法获取节点内容】3、实际编码中如何使用 在实际编码中,主要根据事件回调类型,结合被解析的XML结构进行解析提取数据,PULL解析XML文件的主要模式如下,更具体使用看本文提供的例子: view plaincopytry { //开始解析事件 int eventType = parser.getEventType(); //处理事件,不碰到文档结束就一直处理 while (eventType != XmlPullParser.END_DOCUMENT) { //因为定义了一堆静态常量,所以这里可以用switch switch (eventType) { case XmlPullParser.START_DOCUMENT: // 不做任何操作或初开始化数据 break; case XmlPullParser.START_TAG: // 解析XML节点数据 // 获取当前标签名字 String tagName = parser.getName(); if(tagName.equals("XXXTAGXXX")){ // 通过getAttributeValue 和 netxText解析节点的属性值和节点值 } break; case XmlPullParser.END_TAG: // 单节点完成,可往集合里边添加新的数据 break; case XmlPullParser.END_DOCUMENT: break; } // 别忘了用next方法处理下一个事件,不然就会死循环 eventType = parser.next(); } } catch (XmlPullParserException e) { e.printStackTrace(); }catch (IOException e) { e.printStackTrace(); }

android中使用XML来存放数据的问题

可以用SharedPreferences去做,这些文件会保存在"/data/data/包名/shared_prefs"目录下。也可以放到res/xml文件夹下,xml文件夹是自己新建的文件夹,通过getResources().getXml(R.xml.test.xml)去获得对象,通过pull或其他方式解析。再就是写到SD卡中了,这个比较麻烦。

Android项目中的res/xml/是干什么用的

res文件夹里面放的全部都是这个android应用中使用到的资源文件,也就是,图片文件,声音文件,文本文件,布局文件,动画文件,等等等等!!XML,在android中除了xml的基本作用以外,主要是写布局文件用的,你平时看到的那些android程序那些界面,都是用xml布局写出来的,除此之外,还可以用xml定义一些动画,以及一些常用的常量等 (: xoyu )

安卓为什么使用xml作为布局文件

顾名思义,布局文件,就是管理Activity中的布局的文件,各种标签,有各种标签的作用,比如:LinearLayout:指定线性布局FrameLayout:指定帧布局Button:指定按钮每种标签,在官方文档中都有使用方法。

xml是安卓使用的吗(新手使用android的XML(DOM)解析问题,指定路径XML如何读取)

本文编辑:admin

更多文章:


下载qq和安装(手机怎样安装qq)

下载qq和安装(手机怎样安装qq)

这篇文章给大家聊聊关于下载qq和安装,以及手机怎样安装qq对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录手机怎样安装qq怎样下载QQ软件安装电脑上qq怎么下载安装如何在电脑上下载安装qq怎么下载qq并安装到手机手机QQ怎么下

2024年8月13日 07:41

安卓应用市场推荐(安卓哪款下载软件最齐全)

安卓应用市场推荐(安卓哪款下载软件最齐全)

“安卓应用市场推荐”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看安卓应用市场推荐(安卓哪款下载软件最齐全)!本文目录安卓哪款下载软件最齐全安卓4.11可以安装什么应用商店安卓系统有什么好的应用商店可以推荐安卓手机第三方AP

2024年9月10日 00:40

还原精灵有什么用途?什么是还原精灵

还原精灵有什么用途?什么是还原精灵

本文目录还原精灵有什么用途什么是还原精灵什么是还原精灵它的作用有那些电脑还原精灵怎么使用还原精灵是什么用三茗一键恢复好还是一键还原精灵好一键还原和还原精灵如何安装一键还原精灵还原精灵密码忘记了关于一键还原精灵官方网站还原精灵有什么用途还原精

2024年7月4日 21:42

什么是天之痕变速齿轮?变速齿轮有什么用

什么是天之痕变速齿轮?变速齿轮有什么用

大家好,如果您还对变速齿轮不太了解,没有关系,今天就由本站为大家分享变速齿轮的知识,包括什么是天之痕变速齿轮的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录什么是天之痕变速齿轮变速齿轮有什么用变速齿轮怎么用 使用方

2024年4月12日 23:00

怎么找回卸载的软件(软件卸载后怎么恢复)

怎么找回卸载的软件(软件卸载后怎么恢复)

大家好,如果您还对怎么找回卸载的软件不太了解,没有关系,今天就由本站为大家分享怎么找回卸载的软件的知识,包括软件卸载后怎么恢复的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录软件卸载后怎么恢复手机卸载的软件怎么找回

2024年6月23日 11:15

synthesia(下载安装一个安卓液晶电视板的synthesia软件要怎么交费解锁)

synthesia(下载安装一个安卓液晶电视板的synthesia软件要怎么交费解锁)

本文目录下载安装一个安卓液晶电视板的synthesia软件要怎么交费解锁Synthesia怎么添加歌曲synthesia中的音色不好听,有没有什么办法好听点,或者可以用软音源吗synthesia的文件是什么格式 我向把自己想学习的曲子做成s

2024年5月7日 21:55

打印机正常但无法打印(打印机已连接但无法打印)

打印机正常但无法打印(打印机已连接但无法打印)

大家好,关于打印机正常但无法打印很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于打印机已连接但无法打印的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录打

2024年6月13日 08:30

精品成品网站入口(请推荐个你认为最值得去的网站,比较有特色的那种精品网站!)

精品成品网站入口(请推荐个你认为最值得去的网站,比较有特色的那种精品网站!)

各位老铁们好,相信很多人对精品成品网站入口都不是特别的了解,因此呢,今天就来为大家分享下关于精品成品网站入口以及请推荐个你认为最值得去的网站,比较有特色的那种精品网站!的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文

2024年6月25日 12:50

台积电创始人?台积电最大股东是谁

台积电创始人?台积电最大股东是谁

大家好,今天小编来为大家解答以下的问题,关于台积电简介,台积电创始人这个很多人还不知道,现在让我们一起来看看吧!本文目录台积电创始人台积电最大股东是谁台积电跟华为谁实力大台积电芯片为什么那么厉害三星和台积电谁厉害国产十五家主要半导体设备厂商

2024年5月17日 09:17

怎么电脑截图截屏?电脑怎么截图截屏四种方法

怎么电脑截图截屏?电脑怎么截图截屏四种方法

本文目录怎么电脑截图截屏电脑怎么截图截屏四种方法红米1s怎么截图手机屏幕中兴u887怎么截图iphone12 怎么截图acer这牌手机里面微信要怎么截图Win7系统怎么截图快捷键5种Win7截图方法(图文教程)电脑怎么截图快捷键win7恶魔

2024年6月29日 00:33

spartan浏览器(win10怎么开启spartan浏览器)

spartan浏览器(win10怎么开启spartan浏览器)

本文目录win10怎么开启spartan浏览器什么是spartan浏览器如何开启spartan浏览器渲染引擎spartan浏览器中文怎么叫Win10系统Spartan浏览器缓存数据如何进行清理斯巴达浏览器怎么样spartan斯巴达浏览器功能

2023年5月22日 04:20

nba2k21下载安卓版(在哪里可以下载NBA2k21安卓手机中文版)

nba2k21下载安卓版(在哪里可以下载NBA2k21安卓手机中文版)

大家好,今天小编来为大家解答以下的问题,关于nba2k21下载安卓版,在哪里可以下载NBA2k21安卓手机中文版这个很多人还不知道,现在让我们一起来看看吧!本文目录在哪里可以下载NBA2k21安卓手机中文版华为手机怎么下载nba2k21正版

2024年6月30日 06:55

华视安邦怎么更改ip地址?华视安邦主机怎样设置夜间灯光

华视安邦怎么更改ip地址?华视安邦主机怎样设置夜间灯光

本文目录华视安邦怎么更改ip地址华视安邦主机怎样设置夜间灯光华视安邦摄像头怎么恢复出厂设置深圳市华视安邦科技发展有限公司怎么样请问华视安邦客服电话是什么华视安邦怎么更改ip地址摄像头的IP地址都在设置的器件管理中,进入主机页面,找到器件管理

2024年7月17日 09:58

绝地求生大逃杀下载手机版(有人知道手机吃鸡软件叫什么吗)

绝地求生大逃杀下载手机版(有人知道手机吃鸡软件叫什么吗)

大家好,今天小编来为大家解答以下的问题,关于绝地求生大逃杀下载手机版,有人知道手机吃鸡软件叫什么吗这个很多人还不知道,现在让我们一起来看看吧!本文目录有人知道手机吃鸡软件叫什么吗如何下载绝地求生手机版绝地求生大逃杀怎么下载手机版pUBG怎么

2024年6月22日 20:27

轩辕传奇药师弑神技能(轩辕传奇手游弑神有什么用 弑神攻击提升方法解说)

轩辕传奇药师弑神技能(轩辕传奇手游弑神有什么用 弑神攻击提升方法解说)

本文目录轩辕传奇手游弑神有什么用 弑神攻击提升方法解说轩辕传奇药师技能搭配,以及要用什么器灵轩辕传奇弑神技能领悟怎么做,要放法宝可是不知道怎么放求解···轩辕传奇药师紫色杀神技能书轩辕传奇手游弑神有什么用 弑神攻击提升方法解说【弑神介绍】1

2024年7月3日 19:06

天黑请闭眼游戏规则(天黑请闭眼游戏规则)

天黑请闭眼游戏规则(天黑请闭眼游戏规则)

大家好,天黑请闭眼游戏规则相信很多的网友都不是很明白,包括天黑请闭眼游戏规则也是一样,不过没有关系,接下来就来为大家分享关于天黑请闭眼游戏规则和天黑请闭眼游戏规则的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目录天

2024年7月27日 14:15

文言文翻译器在线翻译软件(翻译古文的软件)

文言文翻译器在线翻译软件(翻译古文的软件)

本篇文章给大家谈谈文言文翻译器在线翻译软件,以及翻译古文的软件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录翻译古文的软件文言文翻译app哪个好文言文意思翻译器查文言文翻译的APP好使的文言文翻译软件翻译文言文的软件什么软件

2024年6月27日 16:01

手机网络监控软件(安装手机远程监控要在手机上下载那个软件)

手机网络监控软件(安装手机远程监控要在手机上下载那个软件)

这篇文章给大家聊聊关于手机网络监控软件,以及安装手机远程监控要在手机上下载那个软件对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录安装手机远程监控要在手机上下载那个软件手机有什么软件可以监控网速300wQC2无线网络监控下载什

2024年7月2日 14:57

autocad2014注册机在什么位置(CAD2014版安装后怎么激活注册机在哪里找到)

autocad2014注册机在什么位置(CAD2014版安装后怎么激活注册机在哪里找到)

大家好,今天小编来为大家解答以下的问题,关于autocad2014注册机在什么位置,CAD2014版安装后怎么激活注册机在哪里找到这个很多人还不知道,现在让我们一起来看看吧!本文目录CAD2014版安装后怎么激活注册机在哪里找到autoca

2024年10月11日 11:15

qq号腾讯价值官方测试(QQ价值是怎么估算的)

qq号腾讯价值官方测试(QQ价值是怎么估算的)

本文目录QQ价值是怎么估算的怎么在QQ电脑管家测试QQ价值啊怎么测试我qq账号的价值QQ帐号靓号价值怎么测试QQ价值是怎么估算的测测您的QQ号值多少钱 QQ号价值评估方法介绍 一、从号码来分析价值 (一)号码位数 根据个人喜好吧,选择是要

2024年7月17日 13:09

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2342
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1735
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1168
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1164
标签列表

热门搜索