XMLファイルを読み取る必要があるiPhoneアプリを作成しています
プロパティ
@property (nonatomic, strong) NSString *name;
@property (nonatomic, strong) NSString *fileName;
@property (nonatomic, strong) NSString *description;
@property (nonatomic, strong) NSString *date;
@property (nonatomic, strong) NSString *link;
タグ検索(ここでは「タイトル」のみ)
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
// FIRST TAG XML
if([elementName isEqualToString:@"title"]){
// GET DATA FROM XML
getData = YES; // getData is a bool which is NO initialy
NSLog(@"Found");
}
else
NSLog(@"Not Found");
}
データの取得
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if(getData)
{
// CREATION DE L OBJET DEPUIS LE XML
NSLog(@"This is your desired data = %@",string);
NSLog(@"Object creation ...");
Pebkac *peb = [[Pebkac alloc] init];
NSLog(@"Setup the name ...");
[peb setName:@"Pebkac"];
NSLog(@"Small descrption ...");
[peb setDescription:string];
[pebkacs addObject:peb];
}
}
終了タグ
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
// XML END TAG
if ([elementName isEqualToString:@"title"]){
getData = NO;
}
}
私が観察したバグは、タグ間のすべてのテキストを取得できない場合があることです。