日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時(shí)間:2024/9/30 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
前言:對(duì)xstream不理解的請(qǐng)看:

android XMl 解析神奇xstream 一: 解析android項(xiàng)目中 asset 文件夾 下的 aa.xml 文件

android XMl 解析神奇xstream 二: 把對(duì)象轉(zhuǎn)換成xml

android XMl 解析神奇xstream 三: 把復(fù)雜對(duì)象轉(zhuǎn)換成 xml

android XMl 解析神奇xstream 四: 將復(fù)雜的xml文件解析為對(duì)象

?

1、建立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;} }


2、工具類(lèi)代碼

package com.android10;import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter;import android.content.Context; import android.os.Environment;public class XstreamUtil {XcallBack xcallBack ;/*** 把xml字符串寫(xiě)入SD卡文件* @param context* @param str    xml字符串*/public void writeToXml(Context context, String str ){ //獲取文件路徑String SDPATH = Environment.getExternalStorageDirectory() + "/myfile1.xml/" ;//創(chuàng)建文件File file = new File( SDPATH ) ;if( !file.exists() ){try {file.createNewFile() ;} catch (IOException e) {e.printStackTrace();} }//寫(xiě)入數(shù)據(jù)try {FileOutputStream out = new FileOutputStream( file ) ;OutputStreamWriter outw = new OutputStreamWriter(out); try { outw.write(str); outw.close(); out.close(); xcallBack.success(); } catch (IOException e) { xcallBack.fail(); } } catch (FileNotFoundException e1) {e1.printStackTrace();xcallBack.fail(); }} void setXStreamLister( XcallBack xcallBack ){this.xcallBack = xcallBack ;}}interface XcallBack{/*** 寫(xiě)入成功*/void success() ; /*** 寫(xiě)入失敗*/void fail() ; }


3、主要方法

package com.android10; import android.app.Activity; import android.os.Bundle; import android.widget.Toast; import com.thoughtworks.xstream.XStream; public class MainActivity extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView( R.layout.activity_main );Person person = new Person() ;person.setpName( "saliy" ) ;person.setpAge( "36" );Product product = new Product() ;product.setName( "jhon" ) ;product.setAge( "30" );product.setPerson( person );//將對(duì)象轉(zhuǎn)化為xml字符串XStream xstream = new XStream() ;//設(shè)置別名xstream.alias( "blog" , Product.class ) ; String string = xstream.toXML( product ) ;XstreamUtil xUtil = new XstreamUtil() ;xUtil.setXStreamLister( new XcallBack() {@Overridepublic void success() {Toast.makeText( MainActivity.this , "成功了 ", Toast.LENGTH_SHORT ).show(); }@Overridepublic void fail() {Toast.makeText( MainActivity.this , "失敗了 ", Toast.LENGTH_SHORT ).show(); }});xUtil.writeToXml( this , string );} }

?

4、運(yùn)行結(jié)果

?

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

?

總結(jié)

以上是生活随笔為你收集整理的android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。