生成一个XML文件:XML的序列化器

生成一个XML文件:XML的序列化器

public class MainActivity extends Activity implements OnClickListener {
private Button bt_create ;
private List<SmsBean> smsList ;
SmsBean sms ;

@Override
protected void onCreate(Bundle savedInstanceState) {
super .onCreate(savedInstanceState);
setContentView(R.layout. activity_main );
bt_create =(Button) findViewById(R.id. bt_create );
bt_create .setonClickListener( this );
//模拟短信生成
Random random= new Random();
smsList = new ArrayList<SmsBean>();
for ( int i=0;i<10;i++){
sms = new SmsBean(String.valueOf(random.nextInt(9999)), "短信内容" +i,System.currentTimeMillis());
smsList .add( sms );
}
}

/**
*/
@Override
public void onClick(View v) {
try {
//创建xml序列化器
XmlSerializer serializer = Xml.newSerializer();
//初始化序列化器参数
File file= new File(Environment.getExternalStorageDirectory(), "/sms.xml" );
FileOutputStream fos= new FileOutputStream(file);
serializer.setoutput(fos, "UTF-8" );
//开始写xml文件
serializer.startDocument( "UTF-8" , true ); //xml文件头配置
serializer.startTag( null , "Sms" ); //1.命名空间 2.节点名称
for (SmsBean sms : smsList ) {
serializer.startTag( null , "sms" );
serializer.attribute( null , "id" , "1" ); //添加节点属性
serializer.startTag( null , "address" );
serializer.text(sms.getAddress());
serializer.endTag( null , "address" );
serializer.startTag( null , "content" );
serializer.text(sms.getContent());
serializer.endTag( null , "content" );
serializer.startTag( null , "tate" );
serializer.text(String.valueOf(sms.getDate()));
serializer.endTag( null , "tate" );
serializer.endTag( null , "sms" );
}
serializer.endTag( null , "Sms" );
serializer.endDocument();
//关闭流资源
fos.close();
Toast.makeText(getApplicationContext(), "生成xml文件成功" ,0).show();
} catch (Exception e) {
Toast.makeText(getApplicationContext(), "生成xml文件失败" ,0).show();
}
}


}

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念