• iOS JSON解析


    解析json成dic对象  

    •   
    • -(void)fetchedData:(NSData*)responseData {//parse out the json dataNSError* error;  
    •     NSDictionary* json =[NSJSONSerialization   
    •         JSONObjectWithData:responseData //1  
    •    
    •         options:kNilOptions   
    •         error:&error];  
    •    
    •     NSArray* latestLoans =[json objectForKey:@"loans"]; //2  
    •    
    •     NSLog(@"loans: %@", latestLoans); //3  
    • }  
    •   
    • 把对象生成json string  
    • //build an info object and convert to json  
    • NSDictionary* info =[NSDictionary dictionaryWithObjectsAndKeys:[loan objectForKey:@"name"],   
    •     @"who",  
    •   [(NSDictionary*)[loan objectForKey:@"location"]   
    •     objectForKey:@"country"],   
    •     @"where",  
    •   [NSNumber numberWithFloat: outstandingAmount],   
    •     @"what",  
    •   nil];  
    •    
    • //convert object to data  
    • NSData* jsonData =[NSJSONSerialization dataWithJSONObject:info   
    •   options:NSJSONWritingPrettyPrinted error:&error];  
    •   
    • //print out the data contents  
    • jsonSummary.text =[[NSString alloc] initWithData:jsonData                                          
    •   encoding:NSUTF8StringEncoding];  
    •   
    • 添加json方法至dic  
    • @interfaceNSDictionary(JSONCategories)  
    • +(NSDictionary*)dictionaryWithContentsOfJSONURLString:(NSString*)urlAddress;  
    • -(NSData*)toJSON;  
    • @end  
    •    
    • @implementationNSDictionary(JSONCategories)  
    • +(NSDictionary*)dictionaryWithContentsOfJSONURLString:(NSString*)urlAddress{  
    •     NSData* data =[NSData dataWithContentsOfURL:[NSURL URLWithString: urlAddress]];  
    •     __autoreleasing NSError* error =nil;  
    •     id result =[NSJSONSerialization JSONObjectWithData:data   
    •       options:kNilOptions error:&error];  
    •     if(error !=nil)returnnil;  
    •     return result;  
    • }  
    •    
    • -(NSData*)toJSON{  
    •     NSError* error =nil;  
    •     id result =[NSJSONSerialization dataWithJSONObject:self   
    •       options:kNilOptions error:&error];  
    •     if(error !=nil)returnnil;  
    •     return result;      
    • }@end  
    •   
    • 使用列子  
    • NSDictionary* myInfo =[NSDictionary dictionaryWithContentsOfJSONURLString:@"http://www.yahoo.com/news.json"];  
    • NSDictionary* information =[NSDictionary dictionaryWithObjectsAndKeys:@"orange",@"apple",@"banana",@"fig",nil];  
    • NSData* json =[information toJSON];  
    •   
    • 判断是否可json化  
    •   
    • BOOL isTurnableToJSON =[NSJSONSerialization isValidJSONObject: object]  
  • 相关阅读:
    桌面图标有蓝底
    创建与删除SQL约束或字段约束
    (转)ASP.NET(C#) 读取EXCEL ——另加解决日期问题
    ASP连接11种数据库的语法
    GridView 合并列、行类
    Office对应ContentType
    (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
    (转)js判断只能输入数字或小数点
    vscode设置字体大小
    springsecurity+jwt实现登录
  • 原文地址:https://www.cnblogs.com/lovewx/p/4044868.html
Copyright © 2020-2023  润新知