Как сжать массив байтов, используя дефлятор? Я попытался с примером сдувать инфляцию со страницы Oracle. Это работало нормально.
Я сомневаюсь, как сделать байт [] размером динамического c.? А как рассчитать до и после сжатия байта []?
API немного сбивает с толку. Взгляните на закончено () , которое сообщает вам после попытки сжать в слишком маленький буфер, что он был слишком маленьким.
Ваш единственный шанс go on означает либо
finished()==false
Одной из альтернатив может быть DeflaterOutputStream запись в ByteArrayOutputStream , но это гораздо более высокий уровень, чем тот подход, о котором вы просили.