Я использую zlib и C++ для сжатия/распаковки файлов.Как получить исходное расширение файла после INFLATE?
Теперь я могу сфотографировать любой файл и поместить его в .z расширение. Но при раздувании файла .z я должен вручную разместить необходимое расширение. Надувание работает так, как должно, и я могу легко раздувать файл .z в stdout или файл.
Я прочитал zlib manual, но не смог справиться, как решить мою проблему. Полагаю, мне нужно копать заголовок архива для этой информации?
Любая помощь будет оценена, спасибо!
Думаю, вы сбросили оригинальное расширение при сжатии. То есть вам следует сжать в file.ext.z, а не file.z. – Matt
@Matt, правда. Я отрезал оригинальное расширение :) Ваш хак действительно хорош, но есть ли другой способ? – Alexandr
На самом деле это не хак. Подумайте об этих файлах .tar.gz. Zilb не имеет исходного файла fileinfo внутри сжатого потока. Вы должны справиться с этим сами. Unix-way - это tar. Но вы можете выбрать другие варианты, если хотите. – Matt