如何在 C++ 中使用 libbz2 压缩目录
我需要创建一个目录的 tarball,然后用 C++ 中的 bz2 对其进行压缩。 有没有关于使用 libtar 和 libbz2 的不错的教程?
I need to create a tarball of a directory and then compress it with bz2 in C++. Is there any decent tutorial on using libtar and libbz2?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
好的,我为你准备了一个简单的例子。 没有错误检查和各种任意决定,但它有效。 libbzip2 有相当良好的网络文档。 libtar,没有那么多,但包中有联机帮助页、示例和记录的头文件。 可以使用
g++ C++TarBz2.cpp -ltar -lbz2 -o C++TarBz2.exe
构建以下内容:Okay, I worked up a quick example for you. No error checking and various arbitrary decisions, but it works. libbzip2 has fairly good web documentation. libtar, not so much, but there are manpages in the package, an example, and a documented header file. The below can be built with
g++ C++TarBz2.cpp -ltar -lbz2 -o C++TarBz2.exe
:假设这不仅仅是一个“我怎样才能做到这一点”的问题,那么显而易见的方法是 fork/exec GNU tar 来为您做到这一点。 最简单的方法是使用 system(3) 库例程:
根据 这个,libtar disty中有示例程序。
Bzip 的文档包含关于使用 libbz2 编程。
Assuming this isn't just a "how can I do this" question, then the obvious way is to fork/exec GNU tar to do it for you. The easiest way is with the system(3) library routine:
According to this, there are example programs in the libtar disty.
Bzip's documentation includes a section on programming with libbz2.