使用XML文件备份短信
- 短信一般需要获取四组数据:号码,内容,时间,类型(发送还是接收)
- 创建几个虚拟的短信对象,存在list中
- 备份数据通常都是备份至sd卡(需要权限)
使用StringBuffer拼接字符串
代码
JavaBean
public class Message {private String body; // 内容 date// 时间 address// 对方号码 type// 类型 1是收到 2是发送 getBody()return}void setBody(String)this.body = getDate setDatedate getAddress setAddressaddress getType setTypetype Message,super(); }
操作
// 存放虚拟短信信息
// 备份短信
import javaio.File;.FileNotFoundException.FileOutputStreamutil.ArrayList.List comitheimacreatexmldomain.Message androidos.Bundleapp.Activityview.Menu.View MainActivityextends Activity List<Message> smsList @Overrideprotected onCreate(Bundle savedInstanceStateonCreate(savedInstanceState); setContentViewRlayoutactivity_main//虚拟10条短信 smsList new ArrayList>();for(int i 0<10 i++){ sms ("Hello"+ SystemcurrentTimeMillis """138"i"1"addsms} click(View v){//在内存中把xml备份短信的格式拼接出来 StringBuffer sb StringBuffer sbappend"<?xml version='1.0' encoding='utf-8' standalone='yes' ?>""<messages>"for(Message:"<sms>""<body>"getBody());"</body>""<date>"getDate"</date>""<type>"getType"</type>""<address>"getAddress"</address>""</sms>""</messages>" // 将内容保存起来 File file File"sdcard/sms.xml"try FileOutputStream fos FileOutputStreamfile foswritesbtoString().getBytesclosecatch(Exception e// TODO Auto-generated catch blockprintStackTrace
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> |
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|