我正在尝试以编程方式将 gzip 文件解压缩到内存中并gzip -d file.gz
使用libarchive project模拟命令。该文件实际上取自具有以下标头的http响应Accept-Encoding: gzip, deflate
这是我尝试读取文件的尝试。我预计不会工作,因为 gzip 压缩文件没有条目(它被压缩为流)并archive_read_next_header
尝试从存档中读取下一个文件。
是否有任何替代此功能的方法可以从压缩文件中提取整个数据。
archive_read_support_format_raw(archive);
archive_read_support_filter_all(archive);
archive_read_support_compression_all(archive)
archive_read_open_memory(archive, file_data, file_size);
struct archive_entry *entry;
la_ssize_t total, size;
char *buf;
int status = archive_read_next_header(archive, &entry);
也许有人可以发布解决此问题的最小代码示例?另外,是否有一个选项可以找出 gzip 存档文件是否有条目?