gzwrite -- write to a compressed file


#include <zlib.h>

int gzwrite (gzFile file, voidpc buf, unsigned int len);


The gzwrite() function shall write data to the compressed file referenced by file, which shall have been opened in a write mode (see gzopen() and gzdopen()). On entry, buf shall point to a buffer containing lenbytes of uncompressed data. The gzwrite() function shall compress this data and write it to file. The gzwrite() function shall return the number of uncompressed bytes actually written.

Return Value

On success, gzwrite() shall return the number of uncompressed bytes actually written to file. On error gzwrite() shall return a value less than or equal to 0. Applications may examine the cause using gzerror().


On error, gzwrite() shall set the error number associated with the stream identified by file to indicate the error. Applications should use gzerror() to access this error value.


An underlying base library function has indicated an error. The global variable errno may be examined for further information.


The stream is invalid, is not open for writing, or is in an invalid state.


no compression progress is possible (see deflate()).


Insufficient memory available to compress.