json http://gdata.youtube.com/feeds/api/users/ruflixnet/playlists?v=2&alt=jsoncが あり、ID、タイトル、サイズを取得したいのですが、今はそれを行う方法はありません。
質問する
3456 次
4 に答える
2
于 2012-06-04T08:36:07.953 に答える
1
JSON ライブラリをダウンロードし、それをプロジェクトに含めて、データ用に次のクラスを作成します NSObject クラスを作成します
ObjectData.h
@interface ObjectData : NSObject {
NSString *id;
NSString *title;
NSString *size;
}
@property(nonatomic,retain) NSString *id;
@property(nonatomic,retain) NSString *title;
@property(nonatomic,retain) NSString *size;
@end
ObjectData.M
#import ObjectData.h
@implementation ObjectData
@synthesize id;
@synthesize title;
@synthesize size;
@end
別の DataController クラスを作成する
#import <Foundation/Foundation.h>
@interface DataController : NSObject {
}
+ (id)staticVersion;
- (NSMutableArray *) startParsing:(NSString *)theURLString;
end
#import "DataController.h"
@implementation DataController
DataController *theInstance;
+(id)staticVersion
{
if(!theInstance){
theInstance = [[DataController alloc] init];
}
return theInstance;
}
- (NSMutableArray *) startParsing:(NSString *)theURLString {
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@",theURLString]];
NSString *fileContent= [NSString stringWithContentsOfURL:url];
SBJSON *parser = [[SBJSON alloc] init];
NSDictionary *data = (NSDictionary *) [parser objectWithString:fileContent error:nil];
NSArray *items = (NSArray *) data ;
return items;
}
@end
そしてビューで読み込みました
NSArray *tempArray =[[DataController staticVersion] startParsing:serverName];
for (int i = 0; i<[tempArray count]; i++) {
id *item = [tempArray objectAtIndex:i];
NSDictionary *dict = (NSDictionary *) item;
ObjectData *theObject =[[ObjectData alloc] init];
[theObject setid:[dict objectForKey:@"id"]];
[theObject settitle:[dict objectForKey:@"title"]];
[theObject setsize:[dict objectForKey:@"size"]];
[resultArray addObject:theObject];
[theObject release];
theObject=nil;
最後に、preferenc.h ファイルを作成し、json データ パスを指定します。
#import <Foundation/Foundation.h>
#define serverName @"http://gdata.youtube.com/feeds/api/users/ruflixnet/playlists?v=2&alt=jsonc"
これがうまくいくことを願っています
于 2012-06-04T11:39:34.293 に答える
1
たとえば、SBJSON ライブラリを使用します。IVe は常にそれらを使用しており、かなり優れています。
ここにチュートリアルがあります:
http://blog.zachwaugh.com/post/309924609/how-to-use-json-in-cocoaobjective-c
于 2012-06-04T08:32:55.190 に答える
0
SBJsonを使用
SBJsonParser *parser = [[SBJsonParser alloc] init];
NSMutableDictionary *dicRes = [parser objectWithString:stringFromServer error:nil];
于 2012-06-04T08:40:58.290 に答える