1

I can use the DotNetZip library to unzip a single zip file:

Using Zip As ZipFile = ZipFile.Read(ZipFilePath)
    AddMessage("Unzipping " & Zip.Entries.Count & " entries")
End Using

However, if I try and pass in the first segment of a split archive produced using 7-Zip (e.g. Pubs.zip.001) then it throws an error:

Could not read block - no data! (position 0x03210FCE)

The documentation seems to infer that you don't have to do anything special to read a split archive:

This property has no effect when reading a split archive. You can read a split archive in the normal way with DotNetZip.

What am I doing wrong?

Rob Nicholson
  • 1,943
  • 5
  • 22
  • 37
  • Note: 0x03210FCE is 50MB which is the split size. So Read isn't finding the next segment automatically – Rob Nicholson Sep 12 '15 at 14:16
  • I suspect this could be a file naming problem, i.e. 7-zip produces multipart archives using .zip.001 .zip.002 etc whereas the DotNetZip documentation generates a different naming system – Rob Nicholson Sep 12 '15 at 14:44
  • I think I have the answer - DotNetZip can't handle the multi-part archives produced by 7-Zip. Maybe there isn't a standard for multipart files. The extensions produced by 7-zip are definitely different to those produced by DotNetZip itself (or the DotNetZip tool). 7-zip is 001, 002, 003 whereas DotNetZip is zip, z02, z03. Even renaming the 7-zip extensions to match DotNetZip doesn't work – Rob Nicholson Sep 12 '15 at 15:34
  • However, if one generates the zip using DotNetZip tool, then the code to extract works fine. So low down - DotNetZip can't handle multi-part archives produced by 7-Zip – Rob Nicholson Sep 12 '15 at 15:35

0 Answers0