title: Is there an open-source alternative to Windows compound files?
body: <p>I'm trying to save a couple of files to a container file. The files can be modified later which means the container might have to be enlarged. The user should only see this container as a single file in the file system. The application is written in C++ and running on Windows, but the files should be portable to other platforms as well.</p>
  
  <p>The requirements for the container format are:<br>
  1. <em>Size</em>: Allow files bigger than 4GB.<br>
  2. <em>Portability</em>: It should be feasible to open the container files on other platforms.<br>
  3. <em>Performance</em>: When changing a file inside the container, only the "chunks" that represent that specific file may be changed. Especially, there may not be a complete rewrite of that file.<br>
  4. <em>Structure</em>: It should provide a directory structure that allows to build a hierarchy of files and directories.  </p>
  
  <p>When leaving out requirement 1.) and 2.) compound files (like used by Word and Excel) are a good fit.  </p>
  
  <p>Of course, it's possible to design an API that fulfills all the requirements, but I wonder if there is already some open-source solution that tackles the very problem?  </p>
  
  <p>Any suggestions?</p>