Pergunta

Para prefaciar Estou usando Borland C ++ eo VCL.

Eu preciso de algum tipo de objeto de armazenamento estruturado que pode ser salvos no disco como um único arquivo e pode conter vários blobs chamados de dados binários que eu posso programaticamente enumerar, acesso e manipular.

O IStorage de interface parece ser perto o que eu quero, mas eu preferiria uma solução estilo VCL como a conversão de TStream (VCL) para IStream de entre outras coisas, fica estranho e sua deve ser uma solução mais simples usando o material VCL allready disponíveis, como um TIniFile mas para dados binários.

Eu não quero usar o XML como as bolhas de dados binários são muito grandes e quando corretamente codificado para uso em XML é completamente ineficiente.

Agradecemos antecipadamente por todas as sugestões.

Foi útil?

Solução

Um arquivo zip é de facto um contêiner padrão, e parece que você pode obter uma interface TStream-lhes: http://www.tek-tips.com/faqs.cfm?fid=6734

Outras dicas

SolFS (Solid File System) de EldoS.

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

Muito confiável, mas pode não ser a solução mais barata ($ 372 para um desenvolvedor).

Eu fui para ZipForge por ComponentAce. É rápido, está sendo desenvolvido ativamente / suportado e tem a interface perfeita para apoiar o que eu quero.

Obrigado por everybodys outras sugestões.

Se você não deseja armazenar enorme arquivo (que tem limite de 2 GB), GPStructuredStorage pode ser útil.

É uma biblioteca de armazenamento estruturado de código aberto escrito em delphi pura, ainda mantida e parece ser trabalhado com D2010.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top