代码之家  ›  专栏  ›  技术社区  ›  Grant Limberg

用于就地修改ZIP文件的C++库

  •  5
  • Grant Limberg  · 技术社区  · 16 年前

    我正在寻找一种方法,可以在现有的ZIP存档或任何其他存档格式中添加或删除文件,只要有跨平台API,而不必用添加的新文件重写新的ZIP文件,也不必从中删除任何项目。

    对于ZIP文件,目录被放置在文件的末尾,因此每次都可能需要重写ZIP文件的某些部分。我只是想避免每次都重写整件事。我正在处理的归档文件很大,速度很重要。

    是否有任何C++库可以满足我的需求?

    3 回复  |  直到 16 年前
        1
  •  4
  •   Sparr    16 年前

    Zipios++ 提供对ZIP存档中文件的直接访问。

        2
  •  1
  •   ScumCoder    5 年前

    miniz 库允许您将文件附加到现有存档中,而无需使用一个函数调用重写它:

    mz_zip_error error = MZ_ZIP_NO_ERROR;
    mz_bool status = mz_zip_add_mem_to_archive_file_in_place_v2("foo.zip", "bar.txt", "Test", 4, "Comment", 7, MZ_BEST_COMPRESSION, &error);
    
        3
  •  0
  •   Adam Davis    16 年前

    有几个zip库可用,其中两个领先的库是:

    http://www.gzip.org/

    http://www.info-zip.org/

    -亚当