본문 바로가기

IOS Swift

Swift Codable로 Json null 값 파싱하기

Json (null 포함)  

{
   "date": "2022-08-02",
   "goalHourForStudying": null,
   "minutesStudied": null,
   "percentageOfAchievement": null
}

이런 형태로 Json이 온다면 어떻게 파싱할 수 있을까..?

일단 저 null이 String인지, Int인지, Bool인지, 이것만 봐서는 알 수가 없습니다.

그래서 null이 아닐 때 값도 보면

Json (null 미포함)

{
   "date": "2022-08-01",
   "goalHourForStudying": 10,
   "minutesStudied": 0,
   "percentageOfAchievement": 0
}

Int 값으로 주고 있습니다. 그럼 이제 Codable을 준수하는 구조체를 만들어볼게요.

 

struct Study: Codable {
   var date: String
   var goalHourForStudying: Int?
   var minutesStudied: Int?
   var percentageOfAchievement: Int?
}

위처럼 null로 올 수 있는 것들에 Optional타입으로 만들면

디코딩시 null값이 올 때 해당 변수에 nil로 값이 들어가게 됩니다! 🥳🥳🥳

반응형

'IOS Swift' 카테고리의 다른 글

iOS WebView(feat. Swift)  (0) 2022.08.19
Property Wrapper  (0) 2022.08.08
Swift 텍스트필드 키보드 내리기  (0) 2022.07.10
iOS 앱 버전 코드로 확인하기 - Swift  (0) 2022.06.29
Fastlane Match로 Signing 하기(feat. iOS)  (0) 2022.04.22