iPhoneアプリでzlibを使用して、テストとしてテキストファイルをgzipファイルに圧縮しようとしています。次のコードを使用しています
const char *s = [[Path stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@".%@", [Path pathExtension]] withString:@".gz"] UTF8String];
gzFile *fi = (gzFile *)gzopen(s, "wb");
const char *c = readFile(Path.UTF8String);
gzwrite(fi, c, strlen(c));
gzclose(fi);
whereは、関数を使用してファイルから取得したreadFile()
a を返します。問題は、これを使用してファイルを圧縮すると、圧縮されず、代わりに gzip ファイルが元のファイルよりも大きくなることです。たとえば、90 バイトのテキスト ファイルがあり、この方法を使用した後の gzip のサイズは 98 バイトです。gzip が元のファイルより小さくないのはなぜですか?const char*
fgets()