前言我正在使用Borland C ++和VCL。
我需要某种结构化存储对象,可以将其作为单个文件保存到磁盘,并且可以包含多个命名的二进制数据blob,我可以以编程方式枚举,访问和操作。
IStorage接口似乎接近我想要的但是我更喜欢VCL风格的解决方案,因为将TStream(VCL)转换为IStream等等变得很尴尬,它们必须是一个更简单的解决方案,使用VCL的东西可用,如TIniFile,但用于二进制数据。
我不想使用XML,因为二进制数据blob非常大,并且在正确编码以便在XML中使用时,它完全不合适。
提前感谢所有建议。
答案 0 :(得分:3)
一个zip文件实际上是一个标准容器,似乎你可以得到一个TStream接口:http://www.tek-tips.com/faqs.cfm?fid=6734
答案 1 :(得分:1)
答案 2 :(得分:0)
我去了ComponentAce的ZipForge。它很快,正在积极开发/支持,并具有完美的界面来支持我想要的东西。
感谢everybodys的其他建议。
答案 3 :(得分:0)
如果您不想存储大文件(限制为2GB),GPStructuredStorage可能会很方便。
这是一个用纯delphi编写的开源结构化存储库,仍然可以维护,似乎可以与D2010一起使用。