rikyoz / bit7z

A C++ static library offering a clean and simple interface to the 7-zip shared libraries.
https://rikyoz.github.io/bit7z
Mozilla Public License 2.0
627 stars 114 forks source link

extract .Z file, filename is wrong #9

Closed Jin-Whu closed 6 years ago

Jin-Whu commented 7 years ago

When I extract .Z file, the filename is [Content]

EruditePig commented 7 years ago

can you show some sample code? I use this lib, but didn't have this problem.

Jin-Whu commented 7 years ago

[ftp://ftp.unibe.ch/aiub/CODE/COPG1420.17I.Z](), can you try this file? Thanks!

EruditePig commented 7 years ago

no i cann't download it. you can try www.codeshare.io, it is a good code share website.

EruditePig commented 7 years ago

maybe this filename has two dots? you can delete one dot, and try again.

rikyoz commented 7 years ago

Hi everyone! The problem is simply this: the Z format (like bzip2 and unlike gzip) doesn't store the name of the original file in the archive (as you may know, all Z, bzip2 and gzip allow compression of only a single file!). This means that, when extracting a .Z archive, 7-zip (and then bit7z) doesn't know which name give to the extracted file! Now, the 7-zip File Manager handles this situation by giving to the extracted file the same name of the archive file, but without the archive extension (e.g. example.jpg.Z will be extracted as example.jpg, as well as example.Z will be extracted as example). However, bit7z was initially based on the sample source code Client7z.cpp of 7-zip , which instead uses that string, "[Content]", as a placeholder for the name of the extracted file. Until now I was more interested in solving other issues, so I didn't change that behavior. I plan to solve this issue in the next milestone v2.2, implementing the same behavior of 7-zip File Manager.

Jin-Whu commented 7 years ago

Thank you! Look forward to the next version!