IStorageのVCL代替
-
03-07-2019 - |
質問
序文では、Borland C ++とVCLを使用しています。
単一のファイルとしてディスクに保存でき、プログラムで列挙、アクセス、操作できるバイナリデータの複数の名前付きblobを含むことができる、何らかの構造化ストレージオブジェクトが必要です。
IStorage インターフェースは私が望むものを閉じますが、TStream(VCL)をIStreamに変換するのは面倒で、TIniFileのようなバイナリデータ用のVCLのものを使用するよりシンプルなソリューションでなければなりません。 >
バイナリデータBLOBは非常に大きいため、XMLを使用したくありません。XMLで使用するために正しくエンコードされた場合、完全に非効率です。
すべての提案に感謝します。
解決
zipファイルは事実上の標準コンテナであり、TStreamインターフェイスを取得できるようです: http://www.tek-tips.com/faqs.cfm?fid=6734
他のヒント
EldosのSolFS(ソリッドファイルシステム)。
非常に信頼性が高いが、最も安価なソリューションではないかもしれません(開発者1人あたり372ドル)。
ComponentAceが ZipForge にアクセスしました。高速で、積極的に開発/サポートされており、私が望むものをサポートするための完璧なインターフェースを備えています。
他のすべての提案に感謝します。
巨大なファイルを保存したくない場合(2GBの制限があります)、 GPStructuredStorage は便利かもしれません。
これは、純粋なデルファイで記述されたオープンソースの構造化ストレージライブラリであり、現在も維持されており、D2010で動作するようです。