長年書き溜めたネタをいよいよ解禁するタイミングが来ました。
ずばりObjective-CでJSONをパースする方法なのだが、
JSON Frameworkを使ってjsonをiPhone(iOS)でパースする。
を確認すると、まずは、GitHubでプログラムのダウンロードが書かれているのだが、実は、FacebookSDKを使っている場合は、運のいいことに、デフォルトでもれなくSBJSONのプログラムもついてくるのです。
なので、後は、JSONの処理に集中すればいいのであるのだが、受け取ったJSONデータを下のように記述すればいいようである。
と書いた場合、返ってくるのは、NSDictionaryかNSArrayなので、上のやり方でも問題ないのだが、下のように書いてもいけそうな気がする。id jsonItem = [jsonData JSONValue];
via:[iPhone] JSON Framework の使い方(解析編)
| if([jsonData isKindOfClass:[NSDictionary class]]){
 NSDictionary *jsonItem = [jsonData JSONValue];
}else if([jsonData isKindOfClass:[NSArray class]]){
 NSArray *jsonItem = [jsonData JSONValue];
} | 
後は、NSDictionaryまたは、NSArrayに対してkeyを使ってvalueを引っ張ってくればおk
しかし、なんで、Objective-Cは、デォルトでJSONをパースする機能を用意してくれていないのだろうか?
歴史を紐解くと1980年代に生まれた言語なので、ないっちゃないのかもしれない。
が、バージョンアップという形で対応はしてほしいなと。
 
 
 
 
0 コメント:
コメントを投稿