服务器返回的数据,被我解析出来之后是如下数据 (服务器是C#的)
H4sIAAAAAAAEAO2XwW7aQBCG75X6DpbvwZAeUiFDRMCJkCBYGEW9VRvvGE+xd631OIa+Wg95pL5C1y5tnbZhjdRDD+bo/Wbn33/H/sXXL8/u9T5NrCdQOUoxsge9vm2BCCVHsR3ZBUUX7+3r8ds37kQpdlhFm5sglpkPKsW8KsktXS/y4T7HkR0TZUPHKcuyV77rSbV1Lvv9gfNhuQjCGFJ2gSInJkKwf1Zxc5Wt21v65/7R+7hQL3piUlAsFX4GS4sZCkxGNqlC93KaXABJAuoew92YsyfkmUIOl67TeN6gN4pxmDFic3E4ua0nVoprF28YhbGvUFAbvA04g4QdavB7h5P4ku1/52fMpHyqgBFMItLOMrUDk6JJwZHa41pQe3jJdk0lU5lmCdDpK9WKflW0voBGTUCMMCcMT5vrCU8fPMgSpA3T3q5ha+AfsARvH1DxaDo2pHKl1hAC6nfxnqVgHrhAJry18gConuU7jGgN1bHNBb7M6VaByXxNzgnSc3b+wZvIkIn6KgPkd3oY/FuT4TW1kFsjOPW1DEogBUFGOCgeU6SzSpbRC1y7aO6iB7H+CM1FJE3yi5xkWtlo3HYmS7GQjJ9RMq2+0Yk+AHKz6hgzI/SAUOrtzO+BnvqVWKCASmflw7jCXOdvK8dUcF6LhX+eFyK8Kj6pq/xjf9AmL47SXzzqEqNLjC4xusToEuN/SwzXee0fzvgbNXGioycNAAA= 上面的是Base64编码的,要转二进制之后是下面数据:
<1f8b0800 00000000 0400ed97 c16eda40 1086ef95 fa0e96ef c1901e52 214344c0 89902058 1845bd55 1bef184f b177adf5 3886be5a 0f79a4be 42d72e6d 9db6618d d4430fe6 e8fd66e7 df7fc7fe c5d72fcf eef53e4d ac275039 4a31b207 bdbe6d81 082547b1 1dd90545 17efedeb f1db37ee 44297658 459b9b20 96990f2a c5bc2ac9 2d5d2ff2 e13ec791 1d136543 c729cbb2 57beeb49 b5752efb fd81f361 b908c218 52768122 272642b0 7f567173 95addb5b fae7fed1 fbb8502f 7a625250 2c157e06 4b8b190a 4c4636a9 42f7729a 5c004902 ea1ec3dd 98b327e4 99420e97 aed378de a0378a71 98316273 7138b9ad 27568a6b 176f1885 b1af5050 1bbc0d38 83841d6a f07b8793 f892ed7f e767cca4 7caa8011 4c22d2ce 32b50393 a249c191 dae35a50 7b78c976 4d255399 6609d0e9 2bd58a7e 55b4be80 464d408c 30270c4f 9beb094f 1f3cc812 a40dd3de ae616be0 1fb0046f 1f50f168 3a36a472 a5d61002 ea77f19e a5601eb8 4026bcb5 f200a89e e53b8c68 0dd5b1cd 05becce9 5681c97c 4dce09d2 7376fec1 9bc89089 fa2a03e4 777a18fc 5b93e135 b5905b23 38f5b50c 4a200541 4638281e 53a4b34a 96d10b5c bb68eea2 07b1fe08 cd45244d f28b9c64 5ad968dc 76264bb1 908c9f51 32adbed1 893e0072 b3ea1833 23f48050 eaedccef 819efa95 58a0804a 67e5c3b8 c25ce76f 2bc75470 5e8b857f 9e1722bc 2a3ea9ab fc637fd0 262f8ed2 5f3cea12 a34b8c2e 31bac4e8 12e37f4b 0cd779ed 1fcef81b 3571a2a3 270d0000>但是我要怎么去解压它呢?求大神指点迷津,小弟感激不尽~~~

解决方案 »

  1.   

    有2个同仁的问题和我是一样的,http://bbs.csdn.net/topics/390618397?page=1#post-401092364 (我用了这个同仁的解压代码,但是行不通,报了很多错误,估计应该要导入什么头文件进去的)
    http://bbs.csdn.net/topics/390876828(这个同仁的问题和我的也是差不多的)
    求大伙来帮助下我,我想过一个快快乐乐的五一劳动节啊
      

  2.   


    这个那个同仁的解压代码,但是我放到工程里面有报了10个错误,求大神来搭救-(NSData *)uncompressZippedData:(NSData *)compressedData  {
        
        if ([compressedData length] == 0) return compressedData;
        
        unsigned full_length = [compressedData length];
        
        unsigned half_length = [compressedData length] / 2;
        
        NSMutableData *decompressed = [NSMutableData dataWithLength: full_length + half_length];
        
        BOOL done = NO;
        
        int status;
        
        z_stream strm;
        
        strm.next_in = (Bytef *)[compressedData bytes];
        
        strm.avail_in = [compressedData length];
        
        strm.total_out = 0;
        
        strm.zalloc = Z_NULL;
        
        strm.zfree = Z_NULL;

        
        if (inflateInit2(&strm, (15+32)) != Z_OK) return nil;
        
        while (!done) {
            // Make sure we have enough room and reset the lengths.
            if (strm.total_out >= [decompressed length]) {
                [decompressed increaseLengthBy: half_length];
            }
            strm.next_out = [decompressed mutableBytes] + strm.total_out;
            strm.avail_out = [decompressed length] - strm.total_out;
            // Inflate another chunk.
            status = inflate (&strm, Z_SYNC_FLUSH);
            //这里 一直返回-3 errordata  ,旧是这问题了,怎么弄啊
            if (status == Z_STREAM_END) {
                done = YES;
            } else if (status != Z_OK) {
                break;
            }
        }
        if (inflateEnd (&strm) != Z_OK) return nil;
        // Set real length.
        if (done) {
            [decompressed setLength: strm.total_out];
            return [NSData dataWithData: decompressed];
        } else {
            return nil;
        }
    }