Fil*_*ren 3 macos json objective-c ios
我试图从API解析一些JSON,但我"解密"JSON的子元素"麻烦".我这样做的方法似乎更漂亮.
我试图解析http://data.mtgox.com/api/2/BTCUSD/money/ticker_fast?pretty,我得到
{
"result": "success",
"data": {
"last_local": {
"value": "785.00000",
"value_int": "78500000",
"display": "$785.00",
"display_short": "$785.00",
"currency": "USD"
},
"last": {
"value": "785.00000",
"value_int": "78500000",
"display": "$785.00",
"display_short": "$785.00",
"currency": "USD"
},
"last_orig": {
"value": "785.00000",
"value_int": "78500000",
"display": "$785.00",
"display_short": "$785.00",
"currency": "USD"
},
"last_all": {
"value": "785.00000",
"value_int": "78500000",
"display": "$785.00",
"display_short": "$785.00",
"currency": "USD"
},
"buy": {
"value": "785.00000",
"value_int": "78500000",
"display": "$785.00",
"display_short": "$785.00",
"currency": "USD"
},
"sell": {
"value": "785.50000",
"value_int": "78550000",
"display": "$785.50",
"display_short": "$785.50",
"currency": "USD"
},
"now": "1386421846023718"
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我要访问value在last在data.我这样做的方法是嵌套一堆objectForKey:string - 比如
[[[[[self getInformationFrom:mtgox] objectForKey:@"data"] objectForKey:@"last"] objectForKey:@"value"] floatValue];
基本上getInformationFrom:mtgox,NSDSON与NSJSONSerialization一起返回的是什么.
有没有更好的方法来获取此JSON数据的价值?
您可以使用字典文字:
[[self getInformationFrom:mtgox][@"data"][@"last"][@"value"] floatValue];
Run Code Online (Sandbox Code Playgroud)
或者您可以使用KVC:
[[[self getInformationFrom:mtgox] valueForKeyPath:@"data.last.value"] floatValue];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
536 次 |
| 最近记录: |