У меня есть XML-файл, в котором хранятся идентификаторы, имена и URL-адреса
Мне нужно прочитать файл и проверить значение идентификатора. Если он равен soe
параметру, я прочитаю имя и URL и перестану проверять. В противном случае я перехожу к следующему элементу и делаю ту же проверку.
У меня есть следующий код для iPhone. Это похоже на то, что мне нужно сделать, но мне нужно сделать это на Android:
NSString *url = @"my http url to get xml file";
NSURL *xmlURL = [NSURL URLWithString:url];
XMLParser *parser = [[XMLParser alloc] initXMLParser];
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName isEqualToString:@"person"])
{
Pickers.person= person;
Pickers.fullName = fullName;
Pickers.ID = ID;
Pickers.URl = URl;
return;
}
//There is nothing to do if we encounter the Books element here.
// and release the object.
NSString *P_ID ;
NSString *P_URl;
if([elementName isEqualToString:@"ID"])
{
P_ID = currentElementValue;
NSCharacterSet *doNotWant = [NSCharacterSet characterSetWithCharactersInString:@"\n"];
P_ID = [[P_ID componentsSeparatedByCharactersInSet: doNotWant] componentsJoinedByString: @""];
P_ID = [P_ID stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]];
[ID addObject:P_ID];
}
else if([elementName isEqualToString:@"Name"])
{
[fullName addObject:currentElementValue];
}
else if([elementName isEqualToString:@"Symbol"])
{
[person addObject:currentElementValue];
}
}
else if([elementName isEqualToString:@"URl"])
{
P_URl = currentElementValue;
NSCharacterSet *doNotWant = [NSCharacterSet characterSetWithCharactersInString:@"\n"];
P_URl = [[P_URl componentsSeparatedByCharactersInSet: doNotWant] componentsJoinedByString: @""];
P_URl = [P_URl stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceCharacterSet]];
[URl addObject:P_URl];
}
}
Также я хочу знать, что лучше использовать в моем случае: SAX-парсер, DOM-парсер или XMLPullParser?