我正在开发一个使用 C++、Boost 和 Qt 的项目。我了解如何使用 Qt 中的 qCompress() 函数来压缩单个文件和字节流。
如何压缩包含多个文件的目录,包括子目录?我正在寻找一个跨平台(Mac、Win、Linux)的解决方案;我不想启动一堆新流程。
是否有一种标准方法可以将来自多个文件的字节流组合成一个压缩存档,或者 Boost iostream 库中是否有一个方便的函数或方法?
非常感谢您的帮助。
更新:QuaZip 库看起来非常棒。下载包中有一个示例(在“测试”目录中),它非常清楚地显示了如何压缩文件目录。
更新 2:在我的 Linux 构建环境上完成此任务后,我发现 QuaZip 根本无法与 Visual Studio 编译器一起使用。有可能解决所有这些编译器错误,但请注意这条路径的任何人。