1

对于问题标题的任何混淆,我深表歉意。这是一种复杂的情况,组件对我来说是新的,所以我不确定如何简洁地描述它。

我在存档中有一些 xml 数据和一个图像(在这种情况下是 zip,但很容易是 tar 或 tar.gz)并使用 python、gtk 和 webkit,将图像与一些其他数据。xml 是无需提取文件即可访问的儿童游戏,但图像是另一个问题。

我想避免在将图像放入 WebView 之前将图像提取到硬盘并且对图像数据进行 base64 编码感觉很笨拙,特别是因为图像可能达到数十兆字节。

基本上,我正在寻找一种方法来构造存储在容器文件中的文件的 URI。

几天前,我在 IRC 中询问并被定向到虚拟文件系统。在我执行的搜索中,我发现了一些关于从 zip 文件创建 vfs 的参考资料,但没有任何示例,甚至没有太多关于虚拟文件系统本身(gnomeVFS、gvfs、gio)的文档。我可能正在寻找所有然而,错误的地方。

4

1 回答 1

1

标准 Python 库中的zipfile模块提供了创建、读取、写入、附加和列出 ZIP 文件的工具。

使用ZipFile.read(name[, pwd]) (返回存档中文件名的字节),您可以应用base64.b64encode(s[, altchars])到内容。请注意,在这个简单的过程中,解压缩编码的版本都存储在内存中。

于 2009-08-07T08:12:37.330 回答