Mam pierwsze ciągłe 2/3 pliku, który został skompresowany za pomocą funkcji deflate() zlib. Ostatnia 1/3 została utracona podczas transmisji. Oryginalny nieskompresowany plik miał 600 KB.Jak nadymać częściowy plik zlib
Deflate został wywołany wiele razy przez nadajnik podczas krojenia oryginalnego pliku do rozmiarów kawałków 2KB i przekazywania Z_NO_FLUSH do końca pliku, gdy Z_FINISH został przekazany. Wynikowy kompletny skompresowany plik został przesłany, ale częściowo utracony zgodnie z opisem.
Czy można odzyskać część oryginalnego pliku? Jeśli tak, wszelkie sugestie dotyczące sposobu?
Używam zarówno implementacji zwykłego C ZLIB, jak i implementacji ZLIB w Pythonie 2.7.
Dzięki, tak użyciu decompressobj() pracował. Używałem po prostu zlib.decompress() i podawałem błąd. Użycie dc_obj = zlib.decompressobj() i decomp_data_str = dc_obj.decompress (orig_data_str) rozwiązało problem. – JohnSantaFe