温馨提示×

C++中如何读取压缩文件

c++
小亿
164
2024-04-16 09:50:08
栏目: 编程语言

在C++中读取压缩文件可以使用库来实现压缩文件的解压缩操作,常用的库有zlib、libzip、libarchive等。以下是一个使用zlib库来读取压缩文件的示例代码:

#include <iostream>
#include <fstream>
#include <zlib.h>

int main() {
    const char* filename = "compressed_file.gz";

    gzFile file = gzopen(filename, "rb");
    if (file == NULL) {
        std::cerr << "Error opening file" << std::endl;
        return 1;
    }

    char buffer[1024];
    int num_read;

    while ((num_read = gzread(file, buffer, sizeof(buffer))) > 0) {
        std::cout.write(buffer, num_read);
    }

    gzclose(file);

    return 0;
}

在这个示例中,我们使用gzopen()函数打开一个压缩文件,然后使用gzread()函数读取文件内容并输出到标准输出。最后使用gzclose()函数关闭文件。请注意,这个示例使用zlib库,因此在编译时需要链接zlib库。

0