2016-10-18 6 views
0

json Webサービスから結果を取得しようとしています。文字列値の場合、正常に動作しています。整数値を取得しようとするとsigbartエラーでnsexeptionがスローされます。sigbartエラーのNSexception

私のjson結果はこのようになります。

[{"CaseId":81,"ApplicantName":"test","ApplicantContactNo":"teas","PropertyAddress":"ewae","BankName":"Bank of India","ReportDispatcher":null,"PropertyType":"test","AssignedAt":"2016-10-07T13:01:20","Status":"Open","PropertyId":62,"EmployeeName":null,"StatusId":1} 

CaseIdとAssignedAtをキャプチャしようとするとエラーが発生します。

ここは私のコードです。

NSString * caseid = @"CaseId"; 
NSString * assigned = @"AssignedAt"; 
for (NSDictionary *dataDict in jsonObjects) { 
    NSString *caseid1 = [dataDict objectForKey:@"CaseId"]; 
    NSString *assigned1 = [dataDict objectForKey:@"AssignedAt"]; 
    dictionary = [NSDictionary dictionaryWithObjectsAndKeys: 
        caseid1,caseid,assigned1,assigned, nil];      
    [myObject addObject:dictionary]; 
} 
cell.caseid.text=[tmpDict objectForKey:@"CaseId"]; 
cell.days.text=[tmpDict objectForKey:@"AssignedAt"]; 

助けてください。

+0

あなたはエラーを与える必要があります。しかし、 "[NSNumberの長さ]認識できないセレクタがインスタンスに送信された"ということが推測できます。 'NSJSONSerialization'は' NSData'を 'NSArray'、' NSDictionary'、 'NSString'と' NSNumber'に変換します。 '[[tmpDict objectForKey:@" CaseId "] class]'でチェックすることができます。だから 'cell.caseid.text = [[tmpDict objectForKey:@" CaseId "] stringValue];'は動作するはずです。 – Larme

答えて

0

これはあなたのために働く必要があります。

NSString *caseIdValue = [NSString stringWithFormat:@"%@",[dataDict objectForKey:@"CaseId"]]; 
NSString *assignedAtValue = [NSString stringWithFormat:@"%@",[dataDict objectForKey:@"AssignedAt"]]; 
+0

正常に動作しています。もう1つの助け?私はこの "2016-10-07T13:01:20"のような価値があります。私は現在の日付から2日または3日のような日付に変換したい。どんな助け? –

+0

@ R.AarthikaRajendranもう一つの質問です。あなたは 'NSDateFormatter'を使用して、その文字列の日付を' NSDate'に変換しなければなりません(これについてはすでに問題があります)。そしてそれを "2日前"などに変換します。 。 – Larme

関連する問題