View Single Post
  #1  
Old 11-08-2012, 16:08
o0o_khoaphp_o0o o0o_khoaphp_o0o vẫn chưa có mặt trong diễn đàn
Banned
 
Tham gia ngày: May 2008
Tuổi: 33
Bài gởi: 1,362
Thanks: 22
Thanked 1,810 Times in 383 Posts
Lập trình iPhone - Hướng dẫn đọc file XML

HƯỚNG DẪN ĐỌC DỮ LIỆU TỪ FILE XML BẰNG IPHONE

B1: Implement <NSXMLParserDelegate>

PHP Code:
@interface XeHoiViewController UITableViewController<NSXMLParserDelegate>{
    
NSMutableArray *dsXeHoi;
    
BOOL got;

B2: viewDidLoad, khởi tạo đối tượng NSXMLParser để đọc XML

PHP Code:
NSString *filePath = [[NSBundle mainBundlepathForResource:@"xehoi" ofType:@"xml"];
NSData *data = [[NSData alloc]initWithContentsOfFile:filePath];
NSXMLParser *xmlParser = [[NSXMLParser allocinitWithData:data];
[
xmlParser setDelegate:self];
    
BOOL success = [xmlParser parse];
    
f(success)
NSLog(@"Thành công");
else
NSLog(@"Có lỗi"); 
(File XML có thể là 1 file được attach vào app hoặc load từ Internet)

B3: Tạo 3 function để bóc tách thẻ trong file XML

- Thẻ mở <ten>
PHP Code:
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
    if([
elementName isEqualToString:@"ten"]){
        
got YES
    }


- Nội dung bên trong thẻ <ten>Nội dung</ten>
PHP Code:
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
    if(
got==YES){
        
NSLog(@"%@"string);
    }
  

- Thẻ đóng </ten>
PHP Code:
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
    if([
elementName isEqualToString:@"ten"]){
        
got NO;
    }

Trả Lời Với Trích Dẫn