我正在写一个服务器,它从客户端接收一个zip文件,并解压缩该文件。 当我收到zip文件时,我将它存储到内存中。如何解压缩已经加载到C中的内存中的zip文件?
我发现并尝试了一些库来上传zip文件,比如zlib和minizip,但是所有这些文件都在磁盘上解压缩文件,而不是从内存中解压缩。
我不想将文件存储到磁盘中并进行解压缩,效率不高。
如何从内存中解压文件? 我在Windows上编写C和C++。
我正在写一个服务器,它从客户端接收一个zip文件,并解压缩该文件。 当我收到zip文件时,我将它存储到内存中。如何解压缩已经加载到C中的内存中的zip文件?
我发现并尝试了一些库来上传zip文件,比如zlib和minizip,但是所有这些文件都在磁盘上解压缩文件,而不是从内存中解压缩。
我不想将文件存储到磁盘中并进行解压缩,效率不高。
如何从内存中解压文件? 我在Windows上编写C和C++。
看看libarchive 它支持zip格式。
struct archive *a = archive_read_new();
archive_read_support_compression_gzip(a);
archive_read_support_format_tar(a);
r = archive_read_open_memory(a, buff, sizeof(buff));
请检查回答这个问题的StackOverflow:在内存中提取存档
例http://stackoverflow.com/questions/5303741/best-api-to-unzip-a-file-into -记忆。 –
我不使用Qt,quazip似乎是Qt特有的。 – Celebi