ios2012. 11. 22. 13:43

java XDocument를 사용해 보신 분이면 쉽게 사용이 가능합니다.

 

1. 첨부한 소스나 아래 사이트에 가셔셔 먼저 소스를 받으세요.

    http://github.com/arashpayan/apxml/

 

2. 받은 소스를 모두 class에 추가 합니다.

 

3. xml 파싱을 구현하는 소스에 APXML.h 파일을 import 합니다.

    #import "APXML.h"

 

4. 파싱을 하고자 하는 xml url을 아래와 같이 NSString으로 받아 옵니다.

   NSString* xmlStr = [NSString stringWithContentsOfURL:[NSURL URLWithString:xmlUrl] encoding:NSUTF8StringEncoding error:nil];

 

5. APDocument 객체를 위에서 할당된 NSString을 사용하여 객체를 생성 합니다.

   APDocument* doc = [APDocument documentWithXMLString:xmlStr];

 

6. rootElement를 사용하여 xml 문서의 root를 가져옵니다.

   APElement* rootElement = [doc rootElement];

   rootElement는 하위 엘리먼트들을 모두 포함하고 있습니다.

   이 rootElement를 베이스로 하위 엘리먼트 요소를 파싱해서 사용 하시면 됩니다.

파싱은 아래와 같이 하시면 됩니다.

NSArray* childElements = [rootElement childElements];


for(APElement* child in childElements) {

NSArray* memberElements = [child childElements];

MEMBER* obj = [[MEMBER alloc] init];

for(APElement* member in memberElements) {

// obj 객체 프로퍼티 할당

}

[members addObject:obj];

[obj release];

}

// 엘리먼트명을 가져옵니다.

// 예) <MEMBER id="1"> 에서 값 : MEMBER

[child name]

 

// 엘리먼트 내 Attribute의 값을 가져옵니다.

// 예) <MEMBER id="1"> 에서 값 : 1

[child valueForAttributeNamed:@"id"]

 
// 엘리먼트의 값을 가져옵니다.

// 예) <PHONE>010-0505-7575</PHONE> 에서 값 : 010-0505-7575

[child value]



[출처] APXML|작성자 딩이파파

'ios' 카테고리의 다른 글

apns xampp( php ) 연동해서 구축하기  (0) 2015.01.26
mac에서 사용할수 있는 UML 툴  (0) 2012.11.25
nib but the view outlet was not set.  (0) 2012.10.31
info.pList  (0) 2012.10.28
IPhone Error 메세지  (0) 2012.10.28
Posted by NeverTry