JSONKit:创建一个 json 格式的字符串

Posted

技术标签:

【中文标题】JSONKit:创建一个 json 格式的字符串【英文标题】:JSONKit: create a json formatted string 【发布时间】:2011-07-18 16:29:42 【问题描述】:

我想将 NSDictionary 和 NSArrays 转换为 json 格式。 JSON Kit 可以做到这一点以及如何做到这一点?

【问题讨论】:

【参考方案1】:

// 数据->字符串

NSMutableDictionary *nameElements = [NSMutableDictionary dictionary];     

[nameElements setObject:@"abcd" forKey:@"username"];

[nameElements setObject:@"1234" forKey:@"password"];    

NSString* jsonString = [nameElements JSONString];  

// 字符串->数据

NSDictionary *nameElements_ = [jsonString objectFromJSONString];   

for(NSString *key in [nameElements_ allKeys]) 
    NSString* body = [nameElements_ objectForKey:key];
    NSLog(@"%@", body);

【讨论】:

【参考方案2】:

这是将字典和数组发送到服务器的示例。它对我有用 1000000%。

SBJSON *jparser = [[SBJSON new] autorelease];


NSString *ArrayjsonItems = [jparser stringWithObject:self.UrMergedArray];

NSString *DicjsonItems = [jparser stringWithObject:self.UrMergedDic];




NSLog(@"array Items :%@",self.UrMergedArray);

NSLog(@"dic Items :%@",self.UrMergedDic);




NSString *postString =[NSString stringWithFormat:@"Arrayitems=%@&Dicitems=%@",ArrayjsonItems,DicjsonItems];


NSLog(@"it is going to post : %@ \n\n",postString);



NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:snapURL];

[request setHTTPMethod:@"POST"];

[request setHTTPBody:[postString dataUsingEncoding:NSUTF8StringEncoding]];



NSURLConnection *connection=[[NSURLConnection alloc]
                             initWithRequest:request
                             delegate:self];


if (connection) 

    self.receivedData = [[NSMutableData data] retain];




[connection release];   

【讨论】:

这应该是 SBJSON 而不是 JSONKit

以上是关于JSONKit:创建一个 json 格式的字符串的主要内容,如果未能解决你的问题,请参考以下文章

将对象添加到 JSONKit 创建的字典?

iOS JSONKit objectWithData 返回 null

JSONKit 无法从 php 解析简单的 JSON?

使用 JSONKit 解析 JSON 文件

使用 jsonkit 将 JSonString 反序列化为 NSArray

如何在 JSONKit 中 JSON 序列化 NSDate 字典