iPhone - 读取.e​​pub文件

时间:2010-11-26 07:09:41

标签: iphone unzip epub

我正在准备一份关于在iPhone中阅读.epub文件的申请。在哪里可以获取解压缩和解析文件的示例应用程序的参考?任何人都可以用最佳链接指导我吗?提前谢谢。

2 个答案:

答案 0 :(得分:2)

.epub文件只是一个.zip文件。它包含一些XML格式的目录文件,实际的书籍内容通常是XHTML。您可以使用Objective-Zip解压缩.epub文件,然后使用NSXMLParser来解析XML文件。

更多信息:Epub Format Construction Guide

答案 1 :(得分:0)

除了Ole的回答(这是一个非常好的操作指南)之外,它绝对值得阅读Open Container Format (OCF)的规范 - 抱歉它是一个word文件。这是使用的zip结构的正式规范。

简而言之,您通过

解析文件
  1. 通过查找从字节30开始的文本'mimetype'和从字节38开始的文本'application / epub + zip'来检查它是否合理有效。
  2. 从zip
  3. 中提取文件META-INF / container.xml
  4. 解析该文件并提取其中第一个full-path元素的rootfile属性的值。
  5. 加载引用的文件(full-path属性是相对于zip文件根目录的URL)
  6. 解析该文件。它包含引用所有其他内容(主要是XHTML / CSS /图像)所需的所有元数据。特别是你想要阅读spine元素的内容,它将按阅读顺序列出所有内容文件。
  7. 如果你想做得对,你也应该处理DTBook内容。

    如果您想要做到这一点,您还需要阅读并理解Open Packaging Format (OPF)Open Publication Structure (OPS)规范。