1. 程式人生 > >Android之XmlSerializer生成xml檔案

Android之XmlSerializer生成xml檔案

public class MainActivity extends Activity {
       
List<Sms>smslist=new ArrayList<Sms>();
Sms sms;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        for(int i=0;i<10;i++){
   
    sms=new Sms(i+": 今天天氣真好!!", "110", "1", System.currentTimeMillis()+"");
    smslist.add(sms);
    }

   
    
    }


public void click(View v){

File file =new File(getFilesDir(),"message.xml");      //路徑

//1.拿到物件

XmlSerializer xs=Xml.newSerializer();    

//2.初始化
try {
FileOutputStream output=new FileOutputStream(file);
xs.setOutput(output, "utf-8");                                     //編碼方式

//設定內容

xs.startDocument("utf-8", true);    //頭結點
xs.startTag(null,"message");           //分裝在每個message節點內
for(Sms sms:smslist){
xs.startTag(null, "sms");             //每條資訊的分裝

xs.startTag(null, "body");
xs.text(sms.getBody());
xs.endTag(null, "body");

xs.startTag(null, "address");
xs.text(sms.getAddress());
xs.endTag(null, "address");

xs.startTag(null, "type");
xs.text(sms.getType());
xs.endTag(null, "type");

xs.startTag(null, "time");
xs.text(sms.getTime());
xs.endTag(null, "time");

xs.endTag(null, "sms");
}
xs.endTag(null, "message");             
xs.endDocument();                             //結束
 


} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}