一個更容易的時間我想你必須做出一個模型類是這樣的:
進口
CarDetails.h
@interface CarDetails : NSObject
{
NSString *MapName;
NSString *MapContentName;
NSString *MapWidth;
NSString *MapHeight;
}
@property(retain,nonatomic)NSString *MapName;
@property(retain,nonatomic)NSString *MapContentName;
@property(retain,nonatomic)NSString *MapWidth;
@property(retain,nonatomic)NSString *MapHeight;
CarDetails.m
進口「CarDetai ls.h「
@implementation CarDetails
@synthesize MapName; @synthesize MapContentName; @synthesize MapWidth,MapHeight;
@end
看到這些是其中u全球存儲烏爾值模型對象,你可以從這裏使用的值
現在我們使用三種XML解析器代表
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if([elementName isEqualToString:@"car"]){
carDetails =[[carDetails alloc]init];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName;
{
if([elementName isEqualToString:@"title"]){
car.mapName=nodecontent;
}
else if([elementName isEqualToString:@"link"]){
car.MapContenName=nodecontent;
}
//finally when we reaches the end of tag i am adding data inside the NSMutableArray
if([elementName isEqualToString:@"item"]){
[rssOutputData addObject:car]; // adding the model class object to the array and then use this array to retrieve the values
[car release];
car = nil;
}
//release the data from mutable string variable
[nodecontent release];
//reallocate the memory to get new content data from file
nodecontent=[[NSMutableString alloc]init];
}
- (void) parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
currentNodeContent = (NSMutableString *) [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
}
1)在didStart中,只有在foundCharacters中找到第一個節點 2)時,纔會分配模型類對象3)在didEndElement中,您將從foundCharacters中將數據分配給mo del object
說「XML非常簡單」的人通常分爲兩類:完全理解XML的人,以及認爲他們完全理解XML的人。你屬於哪一個? – 2010-12-06 19:36:38
可能是最後一個...... – 2010-12-06 19:42:40