336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Json 타입 활용하기
안녕하세요. 개발자 myoung입니다. 오늘은 JSON에 대해서 포스팅할려고 합니다.
JSON는 간략한 설명입니다.
JSON(제이슨[1], JavaScript Object Notation)은 속성-값 쌍으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다. 비동기 브라우저/서버 통신 (AJAX)을 위해, 넓게는 XML(AJAX가 사용)을 대체하는 주요 데이터 포맷이다. 특히, 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법으로 알려져 있다. 자료의 종류에 큰 제한은 없으며, 특히 컴퓨터 프로그램의 변수값을 표현하는 데 적합하다. 본래는 자바스크립트 언어로부터 파생되어 자바스크립트의 구문 형식을 따르지만 언어 독립형 데이터 포맷이다. 즉, 프로그래밍 언어나 플랫폼에 독립적이므로, 구문 분석 및 JSON 데이터 생성을 위한 코드는 C, C++, C#, 자바, 자바스크립트, 펄, 파이썬 등 수많은 프로그래밍 언어에서 쉽게 이용할 수 있다. JSON 포맷은 본래 더글라스 크록포드가 규정하였다. RFC 7159와 ECMA-404라는 두 개의 경쟁 표준에 의해 기술되고 있다. ECMA 표준은 문법만 정의할 정도로 최소한으로만 정의되어 있는 반면 RFC는 시맨틱, 보안적 고려 사항을 일부 제공하기도 한다. [2] JSON의 공식 인터넷 미디어 타입은 application/json이며, JSON의 파일 확장자는 .json이다. 출처 - 위키피디아
많이 활용 되고 알기 쉽게 데이터를 분류 할 수 있는 강력한 포맷중 하나입니다. Objective-C, Swift 에서는 NSDictionary, Dictionary 형태와 갔다고 보면 될 것 같습니다.
Dictionry타입을 JSON 타입으로 변환하는 코드 입니다.
do { let jsonData = try JSONSerialization.data(withJSONObject: your_dictiony, options: .prettyPrinted) print(jsonData) } catch { print(error) }
JSON타입을 String타입으로 변환하는 코드 입니다.
do { let convertedString = String(data: you_jsonType, encoding: String.Encoding.utf8) print(convertedString!) } catch { print(error) }
JSON타입을 Dictionary타입으로 변환하는 코드입니다.
do { let backup_data = arr_authText?[0].data(using: .utf8) let decoded = try JSONSerialization.jsonObject(with: backup_data!, options: []) if let dictFromJSON = decoded2 as? [String:Any] { //원하는 Dictionary, Array타입으로 캐스팅 하면 됩니다. print(dicFromJSON) } } catch { print(error) }
JSON 타입은 서버랑 통신 할때 주로 많이 쓰이는 것 같습니다. Swift 라이브러리로는 “SwiftyJSON”이 있습니다.
간단하게 아니라 주로 사용한다면 라이브러리를 사용하는 것을 권장합니다.(정신건강을 위해서라도요..)
틀린점이 있다면 언제든지 댓글을 달아주세요 :)
'iOS 프로그래밍 > iOS' 카테고리의 다른 글
iOS) UIAlertController - alert (0) | 2017.07.11 |
---|---|
iOS)UIActivityViewController (0) | 2017.06.15 |
iOS) string에서 숫자만 꺼내오기 (0) | 2017.05.01 |
iOS) 키보드 타입 (0) | 2017.04.19 |
iOS) UITextField 간단하게 좌우 여백 주기 (0) | 2017.02.20 |