2012-04-15 33 views

risposta

44

compress() viene usato per comprimere i dati in una chiamata, e sempre comprime al zlib formato , che è sgonfiarsi dati con un'intestazione due byte e un rimorchio valore di controllo a quattro byte. compress() viene utilizzato da solo.

deflate() viene utilizzato per comprimere i dati un pezzo alla volta, e/o per comprimere in altri formati, come gzip -wrapped o cruda, e con le altre opzioni, quali i livelli di memoria e le strategie di compressione.

Si utilizzerà compress() se si dispone di tutti i dati disponibili contemporaneamente e di memoria sufficiente per contenere il risultato e si desidera il formato di compressione predefinito, l'utilizzo della memoria e la strategia. Altrimenti, useresti deflate().

deflate() non viene utilizzato da solo. È necessario utilizzare deflateInit() o deflateInit2() per inizializzare la struttura z_stream utilizzata da deflate(). Quindi si chiama deflate() una o più volte per prendere i dati da comprimere e rendere disponibile il risultato. Alla fine, deflateEnd() viene chiamato per liberare le risorse di memoria utilizzate nella struttura. È possibile leggere la documentazione in zlib.h e al numero http://zlib.net/zlib_how.html per ulteriori informazioni.

+21

Mark Adler è [sicuramente l'autorità su questo] (http://en.wikipedia.org/wiki/Mark_Adler). – Xenon

+0

grazie. l'ho letto in parte ma all'inizio non l'ho capito Era solo troppe informazioni, ma me ne sono andato e rileggerlo. – mma1480

+3

fantastico ... ora so perché si chiama adler-32 –

Problemi correlati