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 格式的字符串的主要内容,如果未能解决你的问题,请参考以下文章
iOS JSONKit objectWithData 返回 null