以下のコードは、JSONデータが一連の整数である場合にのみ機能します。 [11,12,13]。代わりにメッセージ/フレーズを取得するにはどうすればよいですか?JSONデータをNSStringとして取得しないでください。
- (IBAction)checkmessages:(id)sender
{
responseData = [[NSMutableData data] retain];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"file:///Users/Alex/Desktop/Test.json"]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
}
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[connection release];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
[responseData release];
NSError *error;
SBJSON *json = [[SBJSON new] autorelease];
NSArray *luckyNumbers = [json objectWithString:responseString error:&error];
[responseString release];
if (luckyNumbers == nil)
label.text = [NSString stringWithFormat:@"JSON parsing failed: %@", [error localizedDescription]];
else {
NSMutableString *text = [NSMutableString stringWithString:@"Latest Message:\n"];
for (int i = 0; i < [luckyNumbers count]; i++)
[text appendFormat:@"%@\n", [luckyNumbers objectAtIndex:i]];
label.text = text;
}
}
EDIT: 私のJSONファイルがどのように見えるとき:[10,11,12]、それが正常に動作しますが、私はそれを変更した場合:[メッセージ1、メッセージ2]、私はエラーを取得します: " JSONの解析に失敗しました:配列を解析する際の期待値 "
あなたはどのような問題が発生していることでしょうか? JSONデータが文字列として返された場合、どのように失敗しますか? –
私のJSONファイルが[10,11,12]のように見える場合は正常に動作しますが、[メッセージ1、メッセージ2]に変更するとエラーが表示されます: "JSONの解析に失敗しました: " – iMinichrispy
引用符もありません。つまり、[" message 1 "、" message 2 "] – Mic