Epub3电子书阅读器制作(二)下载和解压

上次已经对epub阅读器的制作进行了思路分析,现在就开始慢慢入手开始制作epub3阅读器

首先大家可以回顾一下上一次分享的思路原文链接在这里:(http://www.jianshu.com/writer#/notebooks/2365438/notes/5500194)

看完之后,我们继续开始下面的内容,epub3的文章我们必须先从网络上下载下来然后对文件解压因为我们要对里面的文件进行html和css解析,我给大家一个地址(http://42.121.255.86:6080/group1/M00/3E/E7/F_Wj2JzfU4nAMBFpTm.epub)

自己也可以尝试做一下.

下载我是用AFNetworking3.1.0来做的.需要传入需要下载的文件URL和保存文件的路径

示例代码如下:


WQDownloadFileManager.h

定义WQDownloadFileManagerDelegate,当下载时,可以实时拿到下载进度,当下载完成后可以拿到file的存放路径.当下在发生错误时,会将从错误传出,方便对错误进行处理.


WQDownloadFileManager.m

在这里用af3.1.0实现下载,然后在各个阶段使用代理将所需要的数据传出.

当下载的类完成后就可以对下载好的文件进行解压

解压我用的是第三方ZipArchive,我使用pod导入的

然后定义解压类!


WQZipUnpackManager.h

第一个参数是需要传递文件的路径,第二个参数是将文件解压的路径


WQZipUnpackManager.m

定义一个bool值用来返回是否解压成功

第一步是打开需要被解压的文件,如果没有打开直接返回NO,如果没有打开可以检查文件路径是否正确,如果文件路径正确,检查下载的文件的字节数是否有值,今天我遇到了字节数为0的情况,所以在这做出提示.

第二步就是解压过程了,将解压好的文件存放到目标文件路径下.

然后关闭文件.返回YES,表示解压成功.

今天就分享这些.后面会将已下载和未下载不能阅读灯逻辑加上进行分享.

如果以后大家有什么文章希望能够分享在我的专题之下目前文章较少,关注人也比较少,但是日积月累吗!总会好起来的.专题是:iOS学习引擎

谢谢

本人联系方式:qq:513961360

email:513961360@qq.com

也可以加我们的qq群希望能与朋友们一起聊天和学习.群里还有很多iOS开发者,帮助我们解决问题,并且同时学习.

qq群号:580284575

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,019评论 25 708
  • 由于项目需求,想做一个可以读取电子书的需求,而我则主要负责Epub3读书阅读器的前期调研和开发. 先来说一下Epu...
    iOSDevVicky阅读 3,739评论 0 10
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,508评论 0 17
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,198评论 4 61
  • 今日开店长会感悟,我们学了全员生发,却没有坚持用全员生发的精髓解决问题,老板不改变不坚持,团队必然迷失!
    一世惊鸿阅读 127评论 0 0