DateFormatter란?

  • 날짜(Date)와 텍스트(String)을 변환해주는 역할을 한다.
  • 쉽게 말해 Date 타입을 사람이 읽을 수 있는 yyyy-MM-dd 형태의 문자열로 변환해주거나 반대로 yyyy-MM-dd 형태의 문자열에서 Date 타입으로 변환해준다.

DateFormat이란?

  • DateFormatter의 속성 중 하나인 DateFormat은 yyyy-MM-dd 혹은 yyyy-M-dd 처럼 날짜를 텍스트로 혹은 그 반대의 상황에서 어떻게 변환할지 판단할 기준이 된다.
  • 코드로 보면 이해가 쉽다.
let date = Date()

let formatter = DateFormatter()
formatter.locale = Locale(identifier: "ko_KR")

formatter.dateFormat = "yyyy-MM-dd"
print(formatter.string(from: date)) // 2019-03-01

formatter.dateFormat = "yyyy-M-d"
print(formatter.string(from: date)) // 2019-3-1

formatter.dateFormat = "hh:mm:ss"
print(formatter.string(from: date)) // 03:08:02

formatter.dateFormat = "h:m:s"
print(formatter.string(from: date)) // 3:8:2

formatter.dateFormat = "HH:mm:ss"
print(formatter.string(from: date)) // 15:08:02

formatter.dateFormat = "H:mm:ss"
print(formatter.string(from: date))

formatter.amSymbol = "오전"
formatter.pmSymbol = "오후"
formatter.dateFormat = "a hh:mm:ss"
print(formatter.string(from: date)) // 오후 03:44:02