C++、Boost、および Qt を使用するプロジェクトに取り組んでいます。たとえば、Qt の qCompress() 関数を使用して、単一のファイルとバイトストリームを圧縮する方法を理解しています。
サブディレクトリを含む複数のファイルのディレクトリを圧縮するにはどうすればよいですか? クロスプラットフォーム (Mac、Win、Linux) ソリューションを探しています。たくさんの新しいプロセスを起動したくありません。
複数のファイルからのバイトストリームを結合して zip アーカイブにする標準的な方法はありますか、それとも Boost iostream ライブラリで利用できる便利な関数またはメソッドがありますか?
ご協力ありがとうございました。
更新: QuaZip ライブラリは非常に優れています。ダウンロード パッケージ (「tests」ディレクトリ内) には、ファイルのディレクトリを圧縮する方法を非常に明確に示す例があります。
更新 2 : Linux ビルド環境でこのタスクを完了した後、QuaZip が Visual Studio コンパイラでまったく機能しないことがわかりました。これらすべてのコンパイラ エラーに対処することは可能かもしれませんが、このパスを見ている人には注意が必要です。