본문 바로가기 메뉴 바로가기

권말련의 게임 블로그

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

권말련의 게임 블로그

검색하기 폼
  • 분류 전체보기 (1338) N
    • 로스트아크 (574)
      • 대항해 (126)
      • 모험의 서 (75)
      • 모코코(대륙) (119)
      • 기억의 오르골 (18)
      • 업적 (27)
    • 게임 (473) N
      • 엘든링 (151)
      • 마비노기 모바일 (8) N
      • 오버워치2 (23)
      • 포켓몬고 (26)
      • 팰월드 (21)
      • 디아블로4 (43)
      • 마인크래프트 (4)
      • 몬스터 헌터 와일즈 (1)
      • 오딘 (22)
      • 아이온 클래식 (75)
      • 바람의 나라:연 (24)
      • AFK아레나 (45)
      • 배틀그라운드 (2)
      • RPG게임 (7)
      • 리니지TL (2)
      • 모바일게임 (17)
    • 모바일게임 쿠폰 (8)
    • IT (201)
      • iOS (67)
      • Android (38)
      • PHP + Mysql (7)
      • AWS+Window Server (5)
      • 블로그 (32)
    • 일상 (76)
      • 맛집 (8)
      • 운동 (15)
      • 여행 (4)
      • 리뷰 (9)
  • 방명록




티스토리 뷰

IT/iOS

json 데이터에서 key, object 추출하기

권말련 2014. 8. 1. 10:50

json 데이터에서 key, object 추출하기

 
json데이터에서 key값 상관없이 object만 추출하고 싶을 때
key값만 추출하고 싶을 때
데이터를 뽑아내는 소스코드입니다.
 

 

 
저같은 경우는 json데이터가 아래와 같이 들어오는데요
여기서 "apImages"에 있는 objects만 뽑아 올겁니다.
 
Json 데이터
{
        "apOffer": "1d232",
        "apPackage": "",
        "apAppTitle": "World of Tanks Blitz",
        "apAppPromoText": "모바일에서 만나는 월드 오브 탱크! 월드 오브 탱크 블리츠는 다수의 수상 경력과 전 세계 약 8,000만 명의 이용자를 자랑하는 PC 온라인 게임 월드 오브 탱크의 개발사 워게이밍에서 새로 선보이는 모바일 MMO 액션 게임입니다!",
        "apImages": {
            "icon57": "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg",
            "icon114": "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg",
            "icon256": "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg",
            "banner640x100": "",
            "banner640x960": "http://img.podgate.com/content/adpick/2014/0704/14044487019803697.jpg",
            "banner960x640": "http://img.podgate.com/content/adpick/2014/0704/14044487018223111.jpg",
            "banner640x640": "http://img.podgate.com/content/adpick/2014/0704/14044487005158220.jpg",
            "banner1024x500": "http://img.podgate.com/content/adpick/2014/0704/14044487026760734.jpg"
        },
        "apTrackingLink": "http://app.mg/5210992"
    },
 
일일이 key값으로 빼오게 되면 효율적이지가 않죠
그래서 아래 1번과 같이 object만 추출해 냅니다.
2번은 key값만 추출됩니다. icon57, icon114, icon256 ---
 
소스코드
 
adpickData 는 josn 파싱 후 값을 저장한 NSMutableArray 값입니다.
 
NSString *jsonUrl = adpick_url;
    NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:jsonUrl]];
    
    adpickData = [[NSMutableArray alloc] init];
    
    if (jsonData != nil) {
        
        JSONDecoder *jsonKitDecoder = [JSONDecoder decoder];
        adpickData = [jsonKitDecoder objectWithData:jsonData];

    }
NSArray *imgArray = [[adpickData valueForKey:@"apImages"] allObjects];
NSArray *imgArray = [[adpickData valueForKey:@"apImages"] allKeys];

 

결과값 로그

2014-08-01 10:36:54.361 eventmoa[15785:60b]  (

    "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg",

    "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg",

    "http://img.podgate.com/content/adpick/2014/0704/14044487005158220.jpg",

    "http://img.podgate.com/content/adpick/2014/0704/14044487019803697.jpg",

    "http://img.podgate.com/content/adpick/2014/0704/14044487018223111.jpg",

    "http://img.podgate.com/content/adpick/2014/0704/14044487026760734.jpg",

    "",

    "http://img.podgate.com/img/freeapps/859/2_859204347-mzl.otgpjiwj.350x350-75.jpg"

)

 

 

 

반응형
그리드형
저작자표시 (새창열림)

'IT > iOS' 카테고리의 다른 글

UIButton title multi-line  (0) 2014.08.08
UILabel text size height  (0) 2014.08.05
프로젝트 개발과정  (0) 2014.08.05
문자열에서 숫자만 추출하기  (0) 2014.08.04
NSMutableArray shuffle (배열 랜덤으로 섞기)  (0) 2014.07.23
tableview sectionheader 고정 막기  (0) 2014.07.22
Current View get subview  (0) 2014.06.03
64bit에서 컴파일시 objc_msgsend error  (0) 2014.05.15
  • 카카오톡 공유하기
  • 네이버 블러그 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 구글 플러스 공유하기
  • 카카오스토리 공유하기

댓글
반응형
공지사항
최근에 올라온 글

Blog is powered by Tistory / Designed by Tistory

티스토리툴바