Что такое Python-эквивалент java.util.zip.Inflater? - PullRequest
4 голосов
/ 23 июня 2010

У меня есть программа на Java, которая открывает сокет-соединение с сервером, который передает сжатые данные Zip. Я читаю (bytebuffer) из потока, setInput (bytebuffer) для объекта zip и раздуваю (outputbuffer), чтобы получить мои несжатые данные.

Что будет эквивалентным в python?

Вот код Java:

byte[] compressedBytes = new byte[1024];
int bytesRead = inputStream.read(compressedBytes);
zip.setInput(compressedBytes, 0, bytesRead);
zip.inflate(uncompressedBytes, 0, 1024);

Или, если подвести итог, мне нужна опция zip для потоковой передачи (не на основе файлов) для python.

Ответы [ 2 ]

1 голос
/ 23 июня 2010

Вы ищете модуль zlib.java.util.zip на самом деле является реализацией, использующей zlib, а не Zip (он же PKZIP).

1 голос
/ 23 июня 2010

Посмотрите на zlib.decompressobj(). Я думаю, что это должно дать вам то, что вы хотите. Смотри http://docs.python.org/library/zlib.html

...