dqg17080 2012-05-02 01:49 采纳率: 0%
浏览 48

gzencode php到objective c nsdata

My question is similar to here:

iPhone and GZip

only, I get no result.

I gzipped the data in PHP:

$gztext = gzcompress($text,9);
var_dump(base64_encode($gztext));

and tried to decode in iOS:

NSString *encodedGzippedString = @"K0ktLlFIzSspqlTQ09MDYTCloKcApWEEGBkaGZuYAAA=";
NSData *decodedGzippedData     = [NSData dataByBase64DecodingString:encodedGzippedString];
NSData *unGzippedJsonData = [decodedGzippedData gzipInflate];
if(unGzippedJsonData){
    NSString* unGzippedJsonString  = [[NSString alloc] initWithData:unGzippedJsonData encoding:NSASCIIStringEncoding];       
    if(unGzippedJsonString)
         NSLog(@"Result: %@", unGzippedJsonString);
    else
       NSLog(@"string error");
}
else NSLog(@"gzip error");

The result is "gzip error"

  • 写回答

2条回答 默认 最新

  • dreinuqm992401 2012-05-02 02:05
    关注

    This works as expected:

    NSString* base64Str = @"eJwrSS0uUShJrQARxSUAKVwFhg==";
    NSData* gzData = [NSData dataFromBase64String:base64Str];
    NSData* flatData = [gzData gzipInflate];
    NSString* result = [NSString stringWithUTF8String:(const char*) flatData.bytes];
    

    With NSData+Base64 and NSData+Compression categories

    评论

报告相同问题?

悬赏问题

  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程