itunes提供给设备备份的功能,不知道怎么备份的话可以戳一下这个看一下:http://jingyan.baidu.com/article/92255446ea8f46851648f4a4.html

  首先让我们来认识一下iphone的备份文件。备份完成之后,在资源管理器中输入%appdata%,然后进入\Apple Computer\MobileSync,是不是可以看到一个backup文件夹了?是的,这就是iphone备份文件啦。打开了看一下,里面会有各种文件,见图1

  

图1

  上面这些文件中,由40位字符组成的文件是一些数据库文件,待会儿下面我们要说的短信和联系人数据库就在其中。*.list文件是一些信息文件,打开Info.plist文件来看看其中的一些信息吧,见图2

  

                                    图2

  这是什么信息呢?Product Type表示手机设备,图上所示是iphone3,Product Version表示手机设备里的ios版本号,这些信息的用处在于读取数据库文件时可以针对不同的ios号、itunes号等信息做兼容工作,因为不同的ios版本,联系人、短信等数据库也会有相应的变化。

  Status.plist文件里面包含了一些诸如备份时间、是否为全量备份等信息的备份状态,见图3信息

  

图3

  接下来让我们进入本文第二部分,如何实现从备份数据库文件中读取短信和联系人信息。就在\Apple Computer\MobileSync中有两个文件要告诉大家,一个是“31bb7ba8914766d4ba40d6dfb6113c8b614be442”,另一个是“3d0d7e5fb2ce288813306e4d4636395e047a3d28”,他们分别是iphone、ipad等苹果设备的备份数据库文件,要打开它们可以借助一款第三方软件——SQLiteSpy,可以下载下来看看itunes到底帮亲备份了哪些东西。苹果对设备数据备份采用的是开源数据库产品——sqlite,要对这些数据库文件进行解析可以借助sqlite3的封装类,开源地址:http://sqlitewrapper.kompex-online.com/doxygen/dir_c1d6be483d10aafba59e40addb339565.html。利用这个开源库可以对里面的数据进行读取。分为几个步骤:1.初始化数据库,用开源sqlite3封装库里的类SQLiteDatabase的构造函数即可,Kompex::SQLiteDatabase* pDatabase =  new Kompex::SQLiteDatabase(WideToUTF8(strDBFilePath);, SQLITE_OPEN_READONLY, 0);2.利用刚刚获得的数据库指针构造一个sqlite语句指针以操作该数据库,用类SQLiteStatement的构造函数即可,std::auto_ptr<Kompex::SQLiteStatement> pStmt( new Kompex::SQLiteStatement(pDatabase) );。到了这一步你已经有了操作数据库的指针,接下来你要做的是构造一个短信的数据结构,然后通过语句指针读取每一条短信放进一个容器里面。至于得到的pStmt怎么用我就不公布代码了,自己可以写写,顺便练练手,在KompexSQLiteStatement.h中大概会有诸如这么一些接口是要用到的:

      inline void Sql(const std::string &sql) {Prepare(sql.c_str());}

      std::string GetColumnString(int column) const;

      int64 GetColumnInt64(int column) const;

      void FreeQuery();

配合接口注释,只要略懂数据库方面的知识用起来应该不难。

  

  

转载于:https://www.cnblogs.com/zhouyoulie/p/3523643.html

itunes备份文件解析入门相关推荐

  1. (2) 用java实现一个简易编译器1-词法解析入门

    转载地址 : http://blog.csdn.net/tyler_download/article/details/50668983/ 视频地址 : http://study.163.com/cou ...

  2. 让你久等了《开源安全运维平台OSSIM疑难解析--入门篇》正式出版

    2019年暑期,众所期待的新书<开源安全运维平台OSSIM疑难解析--入门篇>由人民邮电出版社正式出版发行.此书从立意到付梓,历时超过两年,经过数十次大修,历经曲折与艰辛,希望为大家代奉献 ...

  3. 让你久等了!《开源安全运维平台OSSIM疑难解析--入门篇》9月上市

    2019年暑期,众所期待的新书<开源安全运维平台OSSIM疑难解析--入门篇>开始印刷,9月份即可预售.此书从立意到付梓,历时超过两年,经过数十次大修,历经曲折与艰辛,希望为大家代奉献一本 ...

  4. Office 文件解析入门

    Office 文件解析入门 概述 - Office 解析相关协议 这里所讲的 Office 文件指的是微软 Office2007 及以后的 PPT/EXCEL/WORD 等文件格式,因为 Office ...

  5. win10同步服务器文件夹在哪里找,Win10 iTunes备份文件在什么位置|win10 itunes备份文件如何查看...

    iTunes是一款非常受欢迎的数字媒体播放应用程序,它会自动将手机内容进行备份.同步,防止资料丢失.最近,有很多朋友向小编咨询windows10 itunes备份文件在哪?下面,系统城小编就为大家介绍 ...

  6. iTunes备份文件在哪?查看iTunes备份文件

    iTunes是苹果免费提供的一款多媒体应用软件,通过iTunes可以对音乐.视频等等进行备份,很多用户也会在电脑上安装iTunes,那么你知道iTunes备份的文件在哪吗?下面下编就来教教大家怎么查看 ...

  7. iTunes备份在哪里,iTunes备份文件路径

    很多用户反馈,表示用iTunes与设备同步的时候,找不到备份文件了,接下来小编就来给大家介绍一下iTunes备份在哪里,怎么找到iTunes的备份文件路径. itunes备份文件在哪? 如果你没有使用 ...

  8. iTunes备份文件在哪?如何改变默认备份文件目录?答案都在这了

    iTunes和iCloud这两个东西,相信苹果用户都很熟悉,由于iCloud的服务器在国外,所以它虽然可以在手机内操作,但是那备份恢复手机数据的速度--简直是让人忍无可忍! 相比之下,iTunes就显 ...

  9. hutool 读取扩展名文件_为什么Win7找不到itunes备份文件在哪?

    为什么Win7找不到itunes备份文件在哪?下面为大家讲讲. Windows 7 电脑:C:Users你登录电脑的用户名(默认是Administrator)AppDataRoamingApple C ...

最新文章

  1. SQL Server 2008 阻止保存要求重新创建表的更改问题的设置方法
  2. 一步步在SAP Cloud Platform上创建HANA实例并使用
  3. 将同时共享的用户数量限制为20_共享充电宝市场需求及计划
  4. mysql update textl类型_MySQL 字段类型参考
  5. 使用maven在netbeans下构建wicket项目
  6. error : cannot open source file SDKDDKVer.h
  7. 车险赔付率分析报告_车险经营情况分析报告模板.ppt
  8. Hibernate(1)——简介
  9. 费马,solovay-staassen,米勒拉宾素性检验方法python实现与比较
  10. Alertmanager 告警详解
  11. DDOS攻击是什么意思?日本奥运官网遭逾4亿次网络攻击
  12. 太原学院计算机科学与技术在哪个校区,太原学院有几个校区及校区地址
  13. 怎样建立产品体系?(七)- 常用工具和度量指标建立
  14. matlab中的plot函数
  15. 关于STM32G071RB的ADC采集误差问题
  16. lcd1602引脚功能
  17. 我的世界mysql插件_MySQL Inventory Bridge — 跨服背包[1.7-1.15]【Bukkit】
  18. MySQL之中间件Mycat实现读写分离
  19. 五面拿下阿里飞猪offer,java图形界面设置背景颜色
  20. 片上网络之论文随便看看

热门文章

  1. unity客户端开源框架
  2. 将职业和兴趣结合起来,于是“胖了么”诞生了!
  3. 腾讯算法实习岗一面--面试90分钟感觉身体被掏空
  4. 操作系统实验:读者写者问题
  5. 泉州dns服务器无响应,网络连接正常但就是网速较慢还修复不了为什么
  6. [转贴]Silverlight 2教程中文版 - Scott Guthrie 博客中文版 - 博客堂翻译
  7. 即将发生的灾难:我们对无线充电的效率分析结果令人震惊!
  8. element-ui 表格(table)合并表头下面合并列且可以收缩展开
  9. python操作系统启动_Python实现查看系统启动项功能示例
  10. 奇偶校验器真值表_奇偶校验器