1

我正在准备一个关于在 iPhone 中读取 .epub 文件的应用程序。我在哪里可以获得用于解压缩和解析文件的示例应用程序的参考?任何人都可以通过最佳链接指导我吗?先感谢您。

4

2 回答 2

2

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

更多信息:Epub 格式构建指南

于 2010-11-26T10:53:09.423 回答
0

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

简而言之,您通过以下方式解析文件

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

如果你想把它做好,你可能还应该处理DTBook内容。

如果您想正确执行此操作,您还需要阅读并理解开放打包格式 (OPF)开放发布结构 (OPS)规范。

于 2010-11-27T23:14:26.763 回答