如何解析整数值到Json iOS?

时间:2013-07-27 11:47:19

标签: ios json parsing uitableview

我通过了NSstring它将正确的数据传入uitableview但是当我解析整数值时它显示异常终止应用程序由于未捕获的异常'NSInvalidArgumentException', reason: -[__NSCFNumber isEqualToString:]: unrecognized selector sent to instance 0x744e9d0 这是我的代码

(void)fetchedData:(NSData *)responseData {  
//parse out the json data  
NSError* error;  
NSDictionary* json = [NSJSONSerialization  
JSONObjectWithData:responseData options:kNilOptions error:&error];  
  NSArray * values=[json objectForKey:@"loans"];  


 NSLog(@"Array: %@",values);

for (NSDictionary *file in values)
        {
            NSNumber *fileTitle=[file objectForKey:@"id"];
            // NSString *fileTitle = [file objectForKey:@"sector"];
            [titles addObject: fileTitle];
        }
[self.mainTableView reloadData];

 }

4 个答案:

答案 0 :(得分:2)

您要将字符串值分配给NSNumber类型。 尝试使用此

NSString *fileTitle=[file objectForKey:@"id"];

[titles addObject: fileTitle];

并使用字符串值。

答案 1 :(得分:1)

[[titles addObject: fileTitle] stringValue];

答案 2 :(得分:0)

我猜你在-tableView: cellForIndexPath

中做了类似的事情
UITableViewCell *cell = [...];
cell.titleLabel.text = titles[indexPath.row];

您只能将NSString用于-[UILabel setText:]方法。

使用简单的-[NSNumber stringValue]或使用NSNumberFormatter将NSNumber转换为NSString。

答案 3 :(得分:0)

一切似乎都好。只需替换

NSNumber *fileTitle=[file objectForKey:@"id"];

NSString *fileTitle = [file objectForKey:@"id"];