`
M.c
  • 浏览: 16562 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Android 公用XML解析

阅读更多
对简单的XML有成效。自己用的还不错。
不多说上代码:
/**
 * 公用XNL解析
 * @param cla 解析的实体(实体内的所有字段必须为String类型)
 * @param result
 */
public void anaXML(Class<?> cla,String result){
	List<Object> list=null;//return对象
	try {
		XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();
		parser.setInput(new StringReader(result));
		Method[] methods=cla.getMethods();//获取实体内的所有方法
		String className=cla.getSimpleName();//实体类名
		int eventType = parser.getEventType();
		list=new ArrayList<Object>();//实例化返回对象
		while (eventType != XmlPullParser.END_DOCUMENT) {
			String name = parser.getName();//获取节点Name
			if(className.equalsIgnoreCase(name)&&eventType== XmlPullParser.START_TAG){//判断是否符合与实体类符合
				Object o=cla.newInstance();//实体化实体类
				for(int j=0;j<methods.length;j++){//循环实体内的方法
					String metName=methods[j].getName();//获取方法Name
					for (int i = 0; i < parser.getAttributeCount(); i++) {//循环xml内的值
						String attributeName="set"+parser.getAttributeName(i);//为获取的XML中字段Name加set字符以便于与set方法匹配
						if(attributeName.equalsIgnoreCase(metName)){//判断字段name与实体方法名是否相同
							Method setMethod=cla.getMethod(metName, String.class);
							setMethod.invoke(o,parser.getAttributeValue(i));
						}
					}
				}
				list.add(o);
			}
			eventType = parser.next();// 获取下一个节点的值
		}
	} catch (Exception e) {
		e.printStackTrace();
	}

}


声明
        欢迎转载,但请保留文章原始出处
        [Iteye]-http://jnwsczh.iteye.com/blog/2019500
0
0
分享到:
评论

相关推荐

    一种基于结构相似性的Android公用库检测方法.pdf

    该方法通过解析反编译后的应用程序安装包,提取弱关联子包,并利用包结构相似度及代码文件调用信息进行包过滤操作,以实现公用库的分类。 文章介绍的技术基于程序依赖图(PDG),这是一种能够表示程序中函数或代码...

    私车公用账务处理及税务问题解析.pdf

    【私车公用账务处理及税务问题解析】 私车公用是指个人拥有的汽车在工作中用于企业事务,这种现象在现代社会中越来越普遍。由于私车公用涉及到企业的账务处理和税务问题,因此理解和处理好这些问题至关重要。 一、...

    Android给所有Activity添加全局统一顶层菜单

    在Android应用开发中,有时我们需要为所有的Activity提供一个全局统一的菜单,以便用户可以在任何页面进行特定的操作。这个过程可以通过自定义一个BaseActivity并继承它来实现,将自定义的菜单逻辑封装在...

    XML 期末考试复习题与考试试题

    **解析器分类**:XML 解析器主要分为两大类——综合的解析器和专用的解析器。综合的解析器包括基于 DOM(Document Object Model 文档对象模型)的解析器和基于 SAX(Simple API for XML 简单的 XML API)的解析器。 ...

    XML基础及实践开发教程(唐琳-主编)习题答案.doc

    XML 基础及实践开发教程习题答案 XML 基础及实践开发教程是学习 XML 的基础知识和实践开发的课程,本文档提供了习题答案,涵盖了 XML 的基础知识、DTD 声明、PI 声明、元素、注释、元素分类、DTD 的分类、属性类型...

    asn.1标准解析

    `ParserRawFile.cpp` 可能负责读取原始的ASN.1编码文件,`publicfun.cpp` 可能包含了一些公用的辅助函数,而 `asn1_parser.cpp` 很可能是具体的asn.1解析逻辑的实现。 在解析过程中,可能使用了树结构算法,如前序...

    XML基础教程课后习题解答.pdf

    * 使用 JAXP(Java API for XML Processing)解析 XML 文档。 * 使用 `DocumentBuilderFactory` 创建文档构建工厂。 * 使用 `DocumentBuilder` 解析 XML 文档。 十、XML 文档的应用 * XML 文档广泛应用于数据交换...

    android-commons:Android公用程式(例如Java端的Apache公用程式)

    3. **DateUtils**: 日期和时间操作的工具类,提供了格式化日期、比较日期、解析日期等功能,使得日期处理更为便捷。 4. **FileUtils**: 文件操作类,包括创建、删除、移动、重命名文件,以及目录操作,有助于简化...

    Android 2.3 源代码

    《Android 2.3源代码解析与开发指南》 Android 2.3,又被称为Gingerbread(姜饼),是Android操作系统的一个重要版本,它带来了许多性能优化和新功能,为开发者提供了更丰富的API和更好的用户体验。源代码的开放性...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    各浏览器开发商已经达成协议,对XML实行严格而挑剔的解析,任何细小的错误都会被报告。你可以将上面的myfile.xml修改一下,比如将改为,然后用IE5直接打开myfile.xml,会得到一个出错信息页面: &lt;?xml version="1.0...

    解决公用IP下载Android源码时遇到的问题

    ### 解决公用IP下载Android源码时遇到的问题 在IT领域,尤其是对于从事移动操作系统开发的工程师来说,下载并编译Android源码是一项常见的任务。然而,在特定的网络环境下(如公司内部网络或使用虚拟机),下载过程...

    公用对话框,公用对话框

    公用对话框是Windows操作系统中的一种标准用户界面组件,它允许应用程序与用户进行特定类型的交互,如打开文件、保存文件、打印、颜色选择、字体选择等。这些预定义的对话框可以方便开发者快速集成到自己的应用中,...

    ehcache.xsd_ehcache.xml代码提示.rar

    此外,提到了“Windows外壳公用DLL文件”,但这里可能是误述,因为Ehcache.xsd主要与XML配置相关,通常不涉及Windows DLL文件。文件大小为23.1KB,表明这是一个相对较小的文件,易于导入和使用。 【标签解析】:...

    AndroidStudio多项目共享library

    在Android开发环境中,Android Studio是首选的集成开发环境(IDE),它提供了丰富的功能来支持复杂的项目结构和协作。本文将详细讲解如何在Android Studio中实现多项目共享library,以提高代码复用性和团队协作效率...

    ADB源码(android / platform / system / core)

    6. `libutils/`: Android系统的公用工具库,包含各种数据结构和辅助函数。 了解了源码结构后,我们可以深入研究ADB的工作流程: 1. 开启ADB服务:在Host端启动adb_server,监听特定端口(默认5037)等待客户端连接...

    Maven项目公用pom.xml

    maven项目的一般配置

    Java公用分页类 Java公用分页类

    Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类

    公用事业行业周报:关注公用事业避险投资机会.pdf

    公用事业行业是资本市场中的重要领域,它主要涵盖了电力、水务、燃气等提供基本公共需求的行业。投资者对公用事业行业的兴趣往往体现在其避险投资特性上,这与该行业的稳定现金流、刚性需求以及稳定的股息支付能力...

    AdGuardDNS:公用DNS解析器,可保护您免受广告跟踪器的侵害

    公用DNS解析器,可保护您免受广告跟踪器的侵害 | | AdGuard DNS AdGuard DNS是跟踪器阻止,隐私保护和父母控制的替代解决方案。 易于设置和免费使用,无论您使用什么平台和设备,它都为在线广告,跟踪器和网络钓鱼...

Global site tag (gtag.js) - Google Analytics