잡초의 일지

[Swift] 시간, 날짜 본문

[코딩] 배우는것/Swift

[Swift] 시간, 날짜

JabCho 2020. 2. 25. 02:32
728x90
반응형
SMALL

https://macinjune.com/all-posts/web-developing/swift/xcode-swift-날짜와-시간-다루기-date-datecomponents/

 

[Xcode / Swift] 날짜와 시간 다루기 | Date() DateComponents() - Mac In June

현재 시점의 날짜와 시간 구하기 Swift 개발 문서에 따르면, Date는 어떠한 달력과 Time Zone과는 독립적인 특정 시점의 시간 포인트이다. Date Class를 생성함으로 인해서 우리가 바로 구할 수 있는 값은 다음과 같다. init() // 현재 시점의 날짜와 시간(시스템에 찍힌) init(timeIntervalSinceNow: TimeInterval) //현재 날짜를 기준으로 매개변수로 전달된 TimeInterval만큼 후의 시간(-값을 전

macinjune.com

 

 

 

import Foundation

print(now)

// 이러면 '런던기준시'가 나온다. 

 

 

import Foundation

let now = Date()
let date = DateFormatter() //Date 객체를 문자열로 바꾸기 위해 DateFomatter를 쓴다.
date.dateFormat = "yyyy-MM-dd HH:mm:ss" //DateFomatter는 디폴트가 내컴퓨터(로컬)이어서 서울시가 뜬다.

date.locale = Locale(identifier: "ko_kr")		//한국의 시간을 지정해준다.
date.timeZone = TimeZone(abbreviation: "KST") // "2018-03-21 18:07:27"

let kr = date.string(from: now)		//Date를 String으로.

print(kr)

Date 로 부터 일정 시간 지난 시간을 알고 싶을때 : timeIntervalSinceNow 파라미터 쓴다. 

let yesterday = Date(timeIntervalSinceNow: (-60*60*24))

let tomorrow = Date(timeIntervalSinceNow: (60*60*24))

yesterday는 - 부호를 붙여준다.

 

이것을 스트링 형식으로 하면

let yesterdayStr = formatter.string(from: yesterday); // 위의 코드블럭에 있는 yesterday

//tomorrow도 마찬가지.

이렇게 된다.

 

프린트 형식은

y  연도 출력
yy : 연도 뒷자리 두개 출력
 yyyy : 연도 네자리 출력
M 월 출력
M : 월에서 뒷자리 하나 (ex: 2)
MM : 월을 두자리로 (ex: 02)
MMM : 영문 약어로 (ex: feb, sept)
MMMM : 영문으로 (ex: february, september)
d 날짜 출력
h, H 시간 출력
hh : 12시간 단위로 출력 (ex: 08)
HH : 24시간 단위로 출력 (ex: 20)
m 분 출력
s 초 출력
z 밀리 초 출력

쨘!

 

출력할 때 

"yyyy-MM-dd"는 "2020-04-17" 로 나오고, 

"HH:mm:ss ZZ"는 "07:23:19 95" 로 나온다.

728x90
반응형
LIST
Comments