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

5

我想将NSDictionary和NSArray转换为json格式。JSON Kit能做到吗,如何操作?

2个回答

9

// 数据->字符串

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

这是一个向服务器发送字典和数组的示例,对我来说百分之百有效。

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。 - Dilshan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接