GZIPInputStream работает с файлами GZIP, распаковывая ввод.GZIPOutputStream сжал все, что вы пишете в него.Поэтому, если вы хотите сжать данные, то вы должны записать в GZIPOutputStream.
Чтобы сжать файл, прочитайте его с помощью FileInputStream и оберните FileOutputStream с помощью GZIPOutputStream;чтение из входного файла в буфер, запись буфера в GZIPOutputStream, пока вы не закончите, и затем закрытие GZIPOutputStream.
Чтобы распаковать данные, вы можете прочитать их с помощью GZIPInputStream.Я только что проверил, и это работает;сжал файл с помощью gzip в командной строке и прочитал его с помощью GZIPInputStream (обернутый вокруг FileInputStream).