VCL alternative to IStorage

VCL alternative to IStorage

本文关键字:IStorage to alternative VCL      更新时间:2023-10-16

在前言中,我使用Borland C++和VCL。

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

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

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

提前感谢您的所有建议。

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

Eldos的SolFS(Solid File System)。

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

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

我选择了ComponentAce的ZipForge。它很快,正在积极开发/支持中,并且有一个完美的界面来支持我想要的东西。

谢谢大家的其他建议。

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

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