0

作为序言,我使用的是 Borland C++ 和 VCL。

我需要某种结构化存储对象,它可以作为单个文件保存到磁盘,并且可以包含多个命名的二进制数据 blob,我可以通过编程方式枚举、访问和操作这些 blob。

IStorage接口似乎与我想要的很接近,但我更喜欢 VCL 风格的解决方案,因为将 TStream (VCL) 转换为 IStream 会变得很尴尬,而且它们必须是一个更简单的解决方案,使用已经可用的 VCL 东西,比如 TIniFile 但对于二进制数据。

我不想使用 XML,因为二进制数据 blob 非常大,并且当正确编码以在 XML 中使用时,它是完全无效的。

提前感谢所有建议。

4

4 回答 4

2

一个 zip 文件实际上是一个标准容器,您似乎可以获得一个 TStream 接口:http ://www.tek-tips.com/faqs.cfm?fid=6734

于 2008-10-21T08:55:08.663 回答
1

来自 Eldos 的 SolFS(固态文件系统)。

http://www.eldos.com/solfs/

非常可靠,但可能不是最便宜的解决方案(一位开发人员 372 美元)。

于 2008-10-20T20:21:54.830 回答
0

我通过 ComponentAce选择了ZipForge 。它速度很快,正在积极开发/支持,并且有完美的界面来支持我想要的。

感谢大家的其他建议。

于 2008-10-21T14:54:46.457 回答
0

如果您不想存储大文件(它有 2GB 的限制),GPStructuredStorage可能会很方便。

它是一个用纯 delphi 编写的开源结构化存储库,仍在维护,似乎可以与 D2010 一起使用。

于 2010-02-22T09:31:44.763 回答