有没有人可以向我解释如何从 zip 文件内的目录中获取文件。我使用 c++ 和 miniz(code.google.com/p/miniz/)。先感谢您。这是我现在使用的代码:
size_t uncomp_size;
mz_bool status;
mz_zip_archive zip_archive;
memset(&zip_archive, 0, sizeof(zip_archive));
status = mz_zip_reader_init_file(&zip_archive, "data.zip", 0);
if (!status){
puts("failed to open zip file\n");
return 0;
}
try{
void* p = NULL;
std::string file_to_extract = "data//test.txt";
int file_index = mz_zip_reader_locate_file(&zip_archive, file_to_extract.c_str(), NULL, MZ_ZIP_FLAG_IGNORE_PATH);
if (file_index < 0)
{
mz_bool is_dir = mz_zip_reader_is_file_a_directory(&zip_archive,file_index);
if(is_dir){
throw std::exception("file_index = folder");
}else{
throw std::exception("cannot find file in zip(0)");
}
}
p = mz_zip_reader_extract_to_heap(&zip_archive, file_index, &uncomp_size, NULL);
if(!p){
throw std::exception("cannot find file …Run Code Online (Sandbox Code Playgroud) 对于一个项目,必须阅读一些zip文件.一切都很好但是什么时候想要从zip文件中的文件夹中读取它不起作用.或者我只是不知道zip如何在c ++中工作.香港专业教育学院在互联网上搜索,找不到答案.