前言:对xstream不理解的请看:

android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件

android XMl 解析神奇xstream 二: 把对象转换成xml

android XMl 解析神奇xstream 三: 把复杂对象转换成 xml

1、文件准备

把一个预先写好的xml文件放在android项目目录的 asset 文件夹。

文件内容为:

<blog>
<age>30</age>
<name>jhon</name>
<person>
<pAge>36</pAge>
<pName>saliy</pName>
</person>
</blog>

2、javaBeen

package com.android10;

public class Person {

    String pName ;
String pAge ; public String getpName() {
return pName;
}
public void setpName(String pName) {
this.pName = pName;
}
public String getpAge() {
return pAge;
}
public void setpAge(String pAge) {
this.pAge = pAge;
}
}
package com.android10;

public class Product {

    private String name ;

    private String age  ;

    private Person person ;

    public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getAge() {
return age;
} public void setAge(String age) {
this.age = age;
} public Person getPerson() {
return person;
} public void setPerson(Person person) {
this.person = person;
}
}

3、主要方法

package com.android10;
import java.io.IOException;
import java.io.InputStream; import android.app.Activity;
import android.os.Bundle; import com.thoughtworks.xstream.XStream; public class MainActivity extends Activity { @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView( R.layout.activity_main ); //得到资源中的数据流
String fileName = "aa.xml" ; //文件名字
try {
InputStream in = getResources().getAssets().open( fileName ) ;
XStream xstream = new XStream() ; //这个blog标识一定要和Xml中的保持一直,否则会报错
xstream.alias( "blog" , Product.class );
Product product = (Product) xstream.fromXML( in ); System.out.println("sss " + product.getName() + product.getAge() );
} catch (IOException e) {
e.printStackTrace();
}
}
}

4、运行结果

product jhon30 person  saliy36

android XMl 解析神奇xstream 四: 将复杂的xml文件解析为对象的更多相关文章

  1. android XMl 解析神奇xstream 六: 把集合list 转化为 XML文档

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  2. android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  3. android XMl 解析神奇xstream 三: 把复杂对象转换成 xml

    前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...

  4. android XMl 解析神奇xstream 二: 把对象转换成xml

    前言:对xstream不理解的请看:android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 1.Javabeen 代码 packa ...

  5. android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件

    简介 XStream 是一个开源项目,一套简单实用的类库,用于序列化对象与 XML 对象之间的相互转换. 将 XML 文件内容解析为一个对象或将一个对象序列化为 XML 文件. 1.下载工具 xstr ...

  6. mybatis源码-解析配置文件(四-1)之配置文件Mapper解析(cache)

    目录 1. 简介 2. 解析 3 StrictMap 3.1 区别HashMap:键必须为String 3.2 区别HashMap:多了成员变量 name 3.3 区别HashMap:key 的处理多 ...

  7. C++PE文件格式解析类(轻松制作自己的PE文件解析器)

    PE是Portable Executable File Format(可移植的运行体)简写,它是眼下Windows平台上的主流可运行文件格式. PE文件里包括的内容非常多,详细我就不在这解释了,有兴趣 ...

  8. 八、Android学习第七天——XML文件解析方法(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...

  9. python XML文件解析:用ElementTree解析XML

    Python标准库中,提供了ET的两种实现.一个是纯Python实现的xml.etree.ElementTree,另一个是速度更快的C语言实现xml.etree.cElementTree.请记住始终使 ...

随机推荐

  1. 一种高效的 vector 四则运算处理方法

    实现 vector 的四则运算 这里假设 vector 的运算定义为对操作数 vector 中相同位置的元素进行运算,最后得到一个新的 vector.具体来说就是,假如 vector<int&g ...

  2. [iOS]关于状态栏(UIStatusBar)的若干问题

    版本: OS X 10.10.5 Xcode 6.4(6E35b) iOS >= 7 一.概述 状态栏(UIStatusBar)指iPhone/iPad/iPod屏幕顶部用于显示网络.时间和电量 ...

  3. C float与char数组 互转

    //转换float数据到字节数组 unsigned char i; float floatVariable; unsigned ]; (unsigned char) *pdata = ((unsign ...

  4. JS 获取一个对象里面第一层元素的数量

    function getObjectLength(obj) { var i = 0; for(var k in obj){ i++; } return i; } var obj = { a: 1, b ...

  5. GNOME3任务栏、标题栏过宽问题

    Debian 7.0 默认安装的是GNOME 3.4.2桌面系统,缺省状态下,用户会发现桌面系统的桌面任务栏及标题栏宽度太大,影响美观,同时也浪费屏幕显示的有效宽度,针对这个问题我们可以通过以下方式进 ...

  6. Win10系统80端口被pid=4的System进程占用 -- 解决方法

    背景: 今天在家里电脑下载phpstudy 2016后,准备启动服务器,结果提示80端口被占用 过程: 百度后有这几种解决方法: 1.IIS占用 .SQL server 2008的报表服务占用 可惜这 ...

  7. CentOS6.5菜鸟之旅:U盘安装CentOS64位

    一.前言 之前下载了个CentOS7 32位版,一下就安装成功了,但由于其目录结构等与之前的CentOS版本有很大的不同,加上教程不多不利于我这种菜鸟学习,于是决定重装CentOS6.5来学习.本篇用 ...

  8. adaboost原理和实现

    上两篇说了决策树到集成学习的大概,这节我们通过adaboost来具体了解一下集成学习的简单做法. 集成学习有bagging和boosting两种不同的思路,bagging的代表是随机森林,boosti ...

  9. [阅读]个人阅读作业week7(200)

    个人作业week7——前端开发感想总结 此次作业因本人(学号1200)长期不上博客所以密码遗忘,输错次数过多账号被锁,所以在SivilTaram同学的博客下挂我的作业,希望助教老师谅解~谢谢! 1. ...

  10. 利用mciSendString播放音频

    最近在写音频播放器,不过有点懒散,开发进度很慢,一天只做了一点点东西.其实就是让程序能播放音频.这个在我大二学winform程序开发时书上有说,那是书上教的是用media player的COM组件,而 ...