<?xml version="1.0" encoding="UTF-8">
<article author="John Doe">
<para>This is a very short article.</para>
</article>
이런 간단한 xml 데이터를 parser 의 delegate의 이벤트의 순서를 본다면..
1. 문서 파싱 시작
2. element (article) 을 시작태그 찾기
3. element(article) 의 attribute(author) 를 찾고, 값("John Doe") 를 구한다.
4. element(para)의 시작태그 찾기
5. characters 찾기 - This is a very short article.
6. element(para)의 끝태그 찾기
7. element(article)의 끝태그 찾기
8. 문서 파싱 종료
-------------------------------------------------------------------------------------------------------
.h
NSXMLParser *parser;
NSMutableString *currentAttribute;
NSMutableArray *xmlElementObjects;
@property (nonatomic, retain) NSXMLParser *parser;
@property (nonatomic, retain) NSMutableString *currentAttribute;
@property (nonatomic, retain) NSMutableArray *xmlElementObjects;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.m
@synthesize parser;
@synthesize currentAttribute;
@synthesize xmlElementObjects;
xmlElementObject = [[NSMutableArray alloc] init];
parser = [[NSXMLParser alloc] initWithContentsOfURL:[NSURL URLWithString:@"url~"]];
[parser setDelegate:self];
[parser parse];
delgate method
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if(![elementName compare:@"elementname"])
{
.......
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedNAme:(NSString *)qName
{
if(![elementName compare:@"elementname"])
{
.......
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
......
}
<article author="John Doe">
<para>This is a very short article.</para>
</article>
이런 간단한 xml 데이터를 parser 의 delegate의 이벤트의 순서를 본다면..
1. 문서 파싱 시작
2. element (article) 을 시작태그 찾기
3. element(article) 의 attribute(author) 를 찾고, 값("John Doe") 를 구한다.
4. element(para)의 시작태그 찾기
5. characters 찾기 - This is a very short article.
6. element(para)의 끝태그 찾기
7. element(article)의 끝태그 찾기
8. 문서 파싱 종료
-------------------------------------------------------------------------------------------------------
.h
NSXMLParser *parser;
NSMutableString *currentAttribute;
NSMutableArray *xmlElementObjects;
@property (nonatomic, retain) NSXMLParser *parser;
@property (nonatomic, retain) NSMutableString *currentAttribute;
@property (nonatomic, retain) NSMutableArray *xmlElementObjects;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.m
@synthesize parser;
@synthesize currentAttribute;
@synthesize xmlElementObjects;
xmlElementObject = [[NSMutableArray alloc] init];
parser = [[NSXMLParser alloc] initWithContentsOfURL:[NSURL URLWithString:@"url~"]];
[parser setDelegate:self];
[parser parse];
delgate method
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if(![elementName compare:@"elementname"])
{
.......
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedNAme:(NSString *)qName
{
if(![elementName compare:@"elementname"])
{
.......
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
......
}






댓글을 달아 주세요