pys60之短信备份

主要用到的api:

sms messages()
返回收件箱里的短信id列表

content(sms id)
返回收到短信的内容

time(sms id)

返回短信时间以秒计算

address(sms id)
返回发件人地址

------------------------------------------

源码:

# -*- coding: utf-8 -*-
# messagebox test
# copyright anarki
import inbox
import appuifw
import e32
import os
import time
mList=[]
def exit_key_handler():
    app_lock.signal()
    #appuifw.app.set_exit()
appuifw.app.screen='normal'
i=inbox.Inbox()
def getMsg():
    global lb
    if len(mList)!=0:
        index = lb.current()
        round = appuifw.Text()
        round.set(mList[index])
        appuifw.app.body = round
        appuifw.app.menu=[('返回'.decode('utf-8'),showList)]
def showList():
    global lb
    if len(mList)==0:
        round = appuifw.Text()
        round.set('无短信'.decode("utf-8"))
        appuifw.app.body = round
    else:
        lb=appuifw.Listbox(mList,getMsg)
        appuifw.app.body = lb
        appuifw.app.menu=[('打开'.decode("utf-8"),getMsg),('保存此条'.decode("utf-8"),saveOne),('保存全部'.decode("utf-8"),saveAll),('读取全部'.decode("utf-8"),loadMsg)]


def saveOne():
    global mList
    global lb
    index = lb.current()
    DIR='E://msg.txt'
    f=open(DIR,'rt')
    content=f.read()
    tmp=eval(content)
    f.close()
    tmp.append(mList[index])
    f=open(DIR,'wt')
    f.write(repr(tmp))
    f.close()

def delOne():
    global mList
    global lb
    DIR='E://msg.txt'
    index = lb.current()
    del mList[index]
    if len(mList)==0:
        round = appuifw.Text()
        round.set('无短信'.decode("utf-8"))
        appuifw.app.body = round
    else:
        lb=appuifw.Listbox(mList,getMsg)
        appuifw.app.body = lb
    f=open(DIR,'wt')
    f.write(repr(mList))
    f.close()
def delAll():
    global mList
    global lb
    DIR='E://msg.txt'
    for j in range(0,len(mList)):
        del mList[0]
    if len(mList)==0:
        round = appuifw.Text()
        round.set('无短信'.decode("utf-8"))
        appuifw.app.body = round
    else:
        lb=appuifw.Listbox(mList,getMsg)
        appuifw.app.body = lb
    f=open(DIR,'wt')
    f.write(repr(mList))
    f.close()
def saveAll():
    global mList
    DIR='E://msg.txt'
    f=open(DIR,'rt')
    content=f.read()
    tmp=eval(content)
    f.close()
    for j in range(0,len(tmp)):
        mList.append(tmp[j])
    f=open(DIR,'wt')
    f.write(repr(mList))
    f.close()
def loadMsg():
    global lb
    DIR='E://msg.txt'
    f=open(DIR,'rt')
    content=f.read()
    global mList
    mList=eval(content)
    f.close()
    if len(mList)==0:
        round = appuifw.Text()
        round.set('无短信'.decode("utf-8"))
        appuifw.app.body = round
    else:
        lb=appuifw.Listbox(mList,getMsg)
        showList()
        appuifw.app.menu=[('打开'.decode("utf-8"),getMsg),('删除此条'.decode("utf-8"),delOne),('删除全部'.decode("utf-8"),delAll)]
    #app_lock = e32.Ao_lock()
    #appuifw.app.body = lb
    #app_lock.wait()

msgList=i.sms_messages()
#mList=[]
for j in range(0,len(msgList)):
    mList.append(i.address(msgList[j])+u'/n'+i.content(msgList[j])+u'/n'+time.strftime("%y/%m/%d %H:%M", time.gmtime(i.time(msgList[j]))))
if len(mList)==0:
    round = appuifw.Text()
    round.set('无短信'.decode("utf-8"))
    appuifw.app.body = round
else:
    lb=appuifw.Listbox(mList,getMsg)
    appuifw.app.body = lb
app_lock = e32.Ao_lock()
appuifw.app.menu=[('打开'.decode("utf-8"),getMsg),('保存此条'.decode("utf-8"),saveOne),('保存全部'.decode("utf-8"),saveAll),('读取全部'.decode("utf-8"),loadMsg)]
appuifw.app.exit_key_handler = exit_key_handler
app_lock.wait()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值