Need Help Extracting Specific Files From Zip Archive

  • JongHewk Park
    JongHewk Park


    I am trying to develop an archive extracting program based on Client7z.
    I managed to extract various archive formats in my program but I don't know how to extract specific files.

    Since Client7z doesn't support that kind of function, I looked into "Bundle\Alone" but couldn't find where or how extracting specific file works.
    Can anybody give guidance on where to look for? ( which source file or what functions make that happen).

    Also, when listing files or directories, is there a way not to search all files?
    For example, I have a huge file with lots of directories/ subdirectories and files inside them and I just want to quickly list only certain directory names. Going through the whole file and skipping certain file works, but it takes too much time to search for all that file and I just want to list the folder names. So I want something like... "for certain directory, don't search inside all subdirectories". How can I do that using Clinet7z? Which part of the code can I change?

    Thanks a lot,

    • Jong
  • Igor Pavlov
    Igor Pavlov

    You must request all names and select required names from them.
    7-Zip handler supports only such interface.
    There is code in 7-zip File Manager (UI/Agent folder), that converts these flat names to tree structure.

    Note also that most important formats (rar, zip, 7z, tar) doesn't use tree structure for filenames.

    • JongHewk Park
      JongHewk Park

      Thanks so much for the reply.

      Just to make sure, are the codes for extracting specific files also in UI/Agent folder?

      if it want to do something like..
      "7z.exe -so filename.tgz | 7z.exe x -si ttar 'specific file name'"
      to avoid extracting the whole tgz and then extracting some file, where can I get help with this code?