потоковая передача в формате gzip - PullRequest
2 голосов
/ 02 февраля 2012

Интересно, есть ли здесь кто-то с опытом работы с форматом gzip? У меня есть очень большой файл gzip, который мне нужно проанализировать. Однако мне может понадобиться только небольшая часть распакованного текстового файла. Возможно ли передавать этот zip-файл без распаковки всего файла?

Кто-нибудь сталкивался с gzip?

1 Ответ

2 голосов
/ 02 февраля 2012

Вы понимаете, что вы можете stream , используя стандартные классы библиотеки Java, верно?Это довольно тривиально, что-то вроде:

GZIPInputStream stream = new GZIPInputStream(new FileInputStream("some_file.gz"));
BufferedReader reader = new BufferedReader(stream);

// Now read line by line... till you hit the content you want.

Весь файл не распакован на диске, просто порции по мере необходимости в памяти.И вы можете при желании повторно сжать и записать снова, используя соответствующие выходные потоки.

...