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

前端之家收集整理的这篇文章主要介绍了生成一个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 );
}
}

/**
* 生成一个xml文件
*/
@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) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "生成xml文件失败" ,0).show();
}
}


}
原文链接:https://www.f2er.com/xml/299711.html

猜你在找的XML相关文章