zoukankan      html  css  js  c++  java
  • JSONkit使用演示

    #import <Foundation/Foundation.h>  
    #import "JSONKit.h"  
      
    int main (int argc, const char * argv[]) {  
        NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];  
      
        NSString *res = nil;  
          
        /* 
         * json格式编码 
         */  
          
        //字符串  
        NSString *str = @"this is a nsstring";  
        res = [str JSONString];  
        NSLog(@"res= %@", [NSString stringWithString: res]);  
        //res= "this is a nsstring"  
          
      
        //数组  
        NSArray *arr = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",nil];  
        res = [arr JSONString];  
        NSLog(@"res= %@", [NSString stringWithString: res]);  
        [arr release];  
        //res= ["One","Two","Three"]  
          
      
        //字典类型(对象)  
        NSArray *arr1 = [NSArray arrayWithObjects:@"dog",@"cat",nil];  
        NSArray *arr2 = [NSArray arrayWithObjects:[NSNumber numberWithBool:YES],[NSNumber numberWithInt:30],nil];  
        NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:arr1,@"pets",arr2,@"other",nil];  
        res = [dic JSONString];  
        NSLog(@"res= %@", [NSString stringWithString: res]);  
        //res= {"pets":["dog","cat"],"other":[true,30]}   
          
          
        /* 
         * json格式解码 
         */  
        JSONDecoder *jd=[[JSONDecoder alloc] init];  
          
        //针对NSData数据  
        NSData *data = [dic JSONData];  
        NSDictionary *ret = [jd objectWithData: data];  
        NSLog(@"res= %@", [ret objectForKey:@"pets"]);  
        //res= (  
        //  dog,  
        //  cat  
        //)  
        NSLog(@"res= %@", [[ret objectForKey:@"other"] objectAtIndex:0]);  
        //res= 1  
          
        //针对NSString字符串数据  
        NSString *nstr = [dic JSONString];  
        NSDictionary *ret2 = [jd objectWithUTF8String:(const unsigned char *)[nstr UTF8String] length:(unsigned int)[nstr length]];  
        NSLog(@"res= %d", [[ret2 objectForKey:@"pets"] indexOfObject:@"cat"]);  
        //res= 1  
        NSLog(@"res= %@", [[ret2 objectForKey:@"other"] objectAtIndex:1]);  
        //res= 30  
          
        [jd release];  
          
        [pool drain];  
        return 0;  
    }  
  • 相关阅读:
    POJ1001 Exponentiation
    centos 在安装YouCompleteMe时提示 Fatal : pyconfig.h No such file or directory
    VMware12上安装CentOS无法上网问题
    mysql报错:/usr/sbin/mysqld:unknown variable 'default-character-set=utf8'
    centos7 python3.5安装mysqlclient1.3.9
    DirectDraw创建Windows窗口
    二进制移位溢出
    格式化时间 与 时间戳的转换
    ADO 读取 ACCESS
    Windows DOS 窗口设置字体颜色
  • 原文地址:https://www.cnblogs.com/cocoajin/p/3082732.html
Copyright © 2011-2022 走看看