手动生成XMl
来源:互联网 发布:surge for mac 配置 编辑:程序博客网 时间:2024/04/30 09:51
bean
public class Sms { private int id; private int type; private String address; private long date; private String body; public Sms() { super(); // TODO Auto-generated constructor stub } public Sms(int id, int type, String address, long date, String body) { super(); this.id = id; this.type = type; this.address = address; this.date = date; this.body = body; } public int getId() { return id; } public void setId(int id) { this.id = id; } public int getType() { return type; } public void setType(int type) { this.type = type; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public long getDate() { return date; } public void setDate(long date) { this.date = date; } public String getBody() { return body; } public void setBody(String body) { this.body = body; } @Override public String toString() { return "Sms [id=" + id + ", type=" + type + ", address=" + address + ", date=" + date + ", body=" + body + "]"; }}
生成xml
public class MainActivity extends Activity implements OnClickListener { List<Sms> list = new ArrayList<Sms>(); private Button back1; private Button back2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); redSms(); } // 初始化控件 private void init() { back1 = (Button) findViewById(R.id.back1); back2 = (Button) findViewById(R.id.back2); back1.setOnClickListener(this); back2.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.back1: StringBuffer sb = new StringBuffer(); sb.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); sb.append("<smss>"); for (Sms s : list) { sb.append("<sms>"); sb.append("<date>"); sb.append(s.getDate()); sb.append("</date>"); sb.append("<type>"); sb.append(s.getType()); sb.append("</type>"); sb.append("<address>"); sb.append(s.getAddress()); sb.append("</address>"); sb.append("<body>"); sb.append(s.getBody()); sb.append("</body>"); sb.append("</sms>"); } sb.append("</smss>"); try { File file = new File(Environment.getExternalStorageDirectory(), "back.xml"); FileOutputStream out = new FileOutputStream(file); out.write(sb.toString().getBytes()); Toast.makeText(this, "备份成功", 0).show(); } catch (IOException e) { Toast.makeText(this, "备份失败", 0).show(); e.printStackTrace(); } break; case R.id.back2: XmlSerializer serializer = Xml.newSerializer(); try { File file = new File(Environment.getExternalStorageDirectory(), "back2.xml"); FileOutputStream out = new FileOutputStream(file); serializer.setOutput(out, "utf-8"); // boolean 代表是否独立 serializer.startDocument("utf-8", true); // 第一个参数代表命名空间 serializer.startTag(null, "smss"); for (Sms sms : list) { serializer.startTag(null, "sms"); serializer.attribute(null, "id", sms.getId() + ""); serializer.startTag(null, "date"); serializer.text(sms.getDate() + ""); serializer.endTag(null, "date"); serializer.startTag(null, "type"); serializer.text(sms.getType() + ""); serializer.endTag(null, "type"); serializer.startTag(null, "body"); serializer.text(sms.getBody()); serializer.endTag(null, "body"); serializer.startTag(null, "address"); serializer.text(sms.getAddress()); serializer.endTag(null, "address"); serializer.endTag(null, "sms"); } serializer.endTag(null, "smss"); serializer.endDocument(); Toast.makeText(this, "备份成功", 0).show(); } catch (Exception e) { Toast.makeText(this, "备份失败", 0).show(); e.printStackTrace(); } break; default: break; } } // 读取系统短信 private void redSms() { ContentResolver contentResolver = getContentResolver(); Cursor cursor = contentResolver.query(Uri.parse("content://sms"), new String[] { "type", "date", "body", "address" }, null, null, null); while (cursor.moveToNext()) { int type = cursor.getInt(cursor.getColumnIndex("type")); long date = cursor.getLong(cursor.getColumnIndex("date")); String body = cursor.getString(cursor.getColumnIndex("body")); String address = cursor.getString(cursor.getColumnIndex("address")); list.add(new Sms(0, type, address, date, body)); } }}
0 0
- 手动生成xml
- 手动生成XML
- 手动生成XMl
- 【Java】Eclipse手动生成JavaWeb项目web.xml文件
- 【Java】Eclipse手动生成JavaWeb项目web.xml文件
- 【Java】Eclipse手动生成JavaWeb项目web.xml文件
- Eclipse手动快捷生成JavaWeb项目web.xml文件
- 用eclipse创建动态web项目手动生成web.xml方法
- 用eclipse创建动态web项目手动生成web.xml方法
- 用eclipse创建动态web项目手动生成web.xml方法
- 用eclipse创建动态web项目手动生成web.xml方法
- 用eclipse创建动态web项目手动生成web.xml方法
- 用eclipse创建动态web项目手动生成web.xml方法
- winfom datatable 手动生成
- 手动生成AWR报告
- 手动生成ASH报告
- 手动生成BMP图片
- Java 手动解析xml数据
- 四则运算
- Mysql关联查询优化器理解
- Building your own private LoRa network
- Redis 基本类型介绍与基础操作指令
- ssh 中报错:org.hibernate.HibernateException: No Hibernate Session bound to thread, and configuration
- 手动生成XMl
- 第四周项目6-多项式求和
- xcoj1226-捕鼠
- 神经网络简介
- 冒泡排序法
- 相对布局的属性
- C语言内存分配
- 仿InternetGetCookie自己解析Cookie文件
- 几种排序算法的稳定性