前言:对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
时间: 2024-10-17 09:15:43