采用zlib进行数据压缩

朱宗鑫1 发布于 2010/07/20 17:40
阅读 1K+
收藏 1

Flash AS3.0支持zlib压缩,调用ByteArray的uncompress函数即可完成。这样将大大减少数据传输量。

C语言使用zlib库,当然也是非常的简单。

#include <stdio.h>
#include <stdlib.h>
#include "zlib.h"

int main(int argc, char** argv) {
    //原始数据
    const unsigned char strSrc[] = "hello world!\n\
aaaaa bbbbb ccccc ddddd eeeee fffff ggggg 中文测试 中文测试\
aaaaa bbbbb ccccc ddddd eeeee fffff ggggg 中文测试 中文测试\
aaaaa bbbbb ccccc ddddd eeeee fffff ggggg 中文测试 中文测试\
aaaaa bbbbb ccccc ddddd eeeee fffff ggggg 中文测试 中文测试";
    unsigned char buf[1024] = {0}, strDst[1024] = {0};
    unsigned long srcLen = sizeof (strSrc), bufLen = sizeof (buf), dstLen = sizeof (strDst);
    printf("Src string:%s\nLength:%d\n", strSrc, srcLen);

    //压缩
    compress(buf, &bufLen, strSrc, srcLen);
    printf("\nAfter Compressed Length:%d\n", bufLen);
    printf("Compressed String:%s\n", buf);

    //解压缩
    uncompress(strDst, &dstLen, buf, bufLen);
    printf("\nAfter UnCompressed Length:%d\n", dstLen);
    printf("UnCompressed String:%s\n", strDst);
    return (EXIT_SUCCESS);
}

        可以参考:http://love.myleft.org/home.php?mod=space&uid=2&do=blog&id=472

加载中
返回顶部
顶部