- 論壇徽章:
- 0
|
簡介
XStream 是一個(gè)開源項(xiàng)目,一套簡單實(shí)用的類庫,用于序列化對象與 XML 對象之間的相互轉(zhuǎn)換。
將 XML 文件內(nèi)容解析為一個(gè)對象或?qū)⒁粋(gè)對象序列化為 XML 文件。
1、下載工具 xstream
下載完成后 把jar包導(dǎo)入到自己的android項(xiàng)目中
2、 常用的方法:
(1)fromXML()方法 返回值是 Object
xStream.fromXML( File file) ;
xStream.fromXML( InputStream in) ;
xStream.fromXML( Reader reader ) ;
xStream.fromXML( String xml ) ;
xStream.fromXML( URL url ) ;
xStream.fromXML( File file , Object root ) ;
xStream.fromXML( InputStream in , Object root ) ;
xStream.fromXML( Reader reader , Object root ) ;
xStream.fromXML( String xml , Object root ) ;
xStream.fromXML( URL url , Object root ) ;
(2)toXML()方法
xStream.toXML( Object object ) ; //返回值String
xStream.toXML( Object object , OutputStream out ); //返回值void
xStream.toXML( Object object , Writer writer ); //返回值void
3、asset 文件夾 下的 aa.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<product>
<name>jike</name>
<age>30</age>
</product>
1.png (42.55 KB, 下載次數(shù): 65)
下載附件
2015-06-15 12:58 上傳
4、實(shí)體- package com.android10;
- public class Product {
- private String name ;
-
- private String age ;
- 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;
- }
- }
復(fù)制代碼 5、實(shí)現(xiàn)代碼- 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 );
- //得到資源中的數(shù)據(jù)流
- String fileName = "aa.xml" ; //文件名字
- try {
- InputStream in = getResources().getAssets().open( fileName ) ;
- XStream xstream = new XStream() ;
- xstream.alias( "product" , Product.class ); //這里的product一定要和 xml文件中的 product 保持一直,否則會(huì)報(bào)錯(cuò)的.
- Product product = (Product) xstream.fromXML( in );
- System.out.println("sss " + product.getName() + product.getAge() );
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
復(fù)制代碼 6、運(yùn)行結(jié)果
sss jike30 |
|