これをすると言って、
NSString *teste = yourData[@"title"];
"title"
json に が完全になくても問題ありません。取得するだけですnull
。これを行う場合:
NSString *teste = yourData[@"location"][@"city"];
"city"
json ネストにない場合は問題ありません。"location"
セクション全体が存在しない場合でも、問題ありません
でも!このような json をよく見かけますが、" largeImage = "<null>"; "
その場合、上記のコードを使用しているとアプリがクラッシュします。
実際には、これを行う必要があります。
NSString *imageUrl = nil;
if ([yourResults[thisRow][@"largeImage"] isKindOfClass:[NSDictionary class]])
imageUrl = yourResults[thisRow][@"largeImage"][@"URL"];
私の質問は本当に:
この問題をカバーするために、おそらくリテラル構文をオーバーライドする (つまり、基になるメッセージをオーバーライドする??) 巧妙な方法はありますか?
したがって、基本的に、この概念[@"blah"]
は基本的に、操作を試みる前に、実際に手元にある辞書であることを最初に確認するようにしてください。
残念なことに、この素晴らしい構文を実際に使用することはできません。
yourData[@"location"][@"city"]
実際には、私が概説した問題のために。
PSこの質問に関する以前の混乱について申し訳ありません.Paramagによって修正されました. 以下 - 良いパラマグ。