티스토리 뷰
728x90
반응형
Time Format 중 Hour를 헷갈렸어서 정리
[ 요약 ]
- HH: 24 hour format / 무조건 2자리 (필요할 경우, 앞에 0 붙여줌)
- hh : 12 hour format / 무조건 2자리 (필요할 경우, 앞에 0 붙여줌)
- H : 24 hour format / 1~2 자리
- h: 12 hour format / 1~2 자리
[ 실험 ]
우선 플레이그라운드를 열고 준비를 합니다.
Case 1.
let sampleDate = date(year: 2021, month: 7, day: 5, hour: 22, minute: 30)!
print(DateFormatter.time_HHmm.string(from: sampleDate)) // 22:30
print(DateFormatter.time_hhmm.string(from: sampleDate)) // 10:30
print(DateFormatter.time_Hmm.string(from: sampleDate)) // 22:30
print(DateFormatter.time_hmm.string(from: sampleDate)) // 10:30
Case 2.
let sampleDate = date(year: 2021, month: 7, day: 5, hour: 3, minute: 3)!
print(DateFormatter.time_HHmm.string(from: sampleDate)) // 03:03
print(DateFormatter.time_hhmm.string(from: sampleDate)) // 03:03
print(DateFormatter.time_Hmm.string(from: sampleDate)) // 3:03
print(DateFormatter.time_hmm.string(from: sampleDate)) // 3:03
[ 참고 ]
참고로 AM/PM or am/pm 표현은 a 이다.
12 hour format에서 07:05:45PM 은 hh:mm:ssa 로 나타낼 수 있다.
24 hour format 에서 19:05:45PM 은 HH:mm:ssa 로 나타낼 수 있다.
func timeConversion(s: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "hh:mm:ssa"
let date = dateFormatter.date(from: s)
dateFormatter.dateFormat = "HH:mm:ssa"
return dateFormatter.string(from: date ?? Date())
}
// 12시간 포맷을 24시간 포맷으로 바꾸고 싶을 때
timeConversion(s: "07:05:45PM") // 19:05:45PM
func timeConversion(s: String) -> String {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "hh:mm:ssa"
let date = dateFormatter.date(from: s)
dateFormatter.dateFormat = "hh:mm:ss a"
return dateFormatter.string(from: date ?? Date())
}
// PM을 한칸 띄우고 싶을 때
timeConversion(s: "07:05:45PM") // 07:05:45 PM
반응형
'🍏 > iOS' 카테고리의 다른 글
[iOS] Xcode 별 Swift 버전 확인하기 (0) | 2021.08.04 |
---|---|
[iOS] iPad에서 Keyboard Navigation 으로 포커스 이동하기 (2) | 2021.07.08 |
[iOS] application(_:didReceiveRemoteNotification..)과 userNotificationCenter(_:didReceive..) 이 같이 있을 때 주의사항 (1) | 2021.06.26 |
[iOS] Provisioning Profile 헷갈리는 것 정리 (1) | 2021.06.01 |
[iOS] Local Notification (0) | 2021.05.31 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- ribs
- 플러터 싱글톤
- SerializerMethodField
- github actions
- flutter build mode
- 장고 URL querystring
- Django FCM
- cocoapod
- Flutter getter setter
- Watch App for iOS App vs Watch App
- DRF APIException
- Sketch 누끼
- Django Firebase Cloud Messaging
- Python Type Hint
- flutter 앱 출시
- Django Heroku Scheduler
- 플러터 얼럿
- Flutter Text Gradient
- 장고 Custom Management Command
- METAL
- Flutter 로딩
- Dart Factory
- PencilKit
- flutter deep link
- Flutter Clipboard
- 구글 Geocoding API
- flutter dynamic link
- drf custom error
- ipad multitasking
- Flutter Spacer
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함