IOS- 时间格式转换问题(12小时和24小时的区别)
生活随笔
收集整理的這篇文章主要介紹了
IOS- 时间格式转换问题(12小时和24小时的区别)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
IOS時間格式區別
問題:使用NSDateFormatter 進行NSString和NSDate對象轉換時,格式字符串中使用“hh”,在iOS設備 日期與時間設置項中24小時制設置項處于關閉的設置下,小時 大于12的NSString對象轉換成NSDate對象時會返回nil。
- 時間格式的含義:
- yy表示Year, Y表示Week Year,計算方式不一樣,通常使用【y】
- MM是為了和分鐘的m區分,Month in year
- dd是Day in month,D是Day in year
- HH是24小時制Hour in day,hh是12小時制Hour in am/pm
- mm是分,Minute in hour
- ss是秒Second in minute,S是Millisecond
- aa是Am/pm marker
我們寫如下一段代碼進行測試:
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {NSString *timeStr = @"2021-12-12 13:15:59";NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];dateFormatter.dateFormat = @"yyyy-MM-dd hh:mm:ss";NSDate *currentDate = [dateFormatter dateFromString:timeStr];NSLog(@"currenDate==========%@",currentDate); }- 當IOS設備 日期與時間設置項中24小時制設置項處于關閉的設置下,
- 使用hh 去解析時間,可以看到如下打印結果:
- 如果使用hh,但是小時沒有超過12,也是可以解析正常的,如下:
- 使用HH解析 是可以正常的解析的:
- 當IOS設備 日期與時間設置項中24小時制設置項處于開啟狀態下, 不管是hh還是HH,不管小時有沒有超過12,都是可以正常的解析成功的
總結
以上是生活随笔為你收集整理的IOS- 时间格式转换问题(12小时和24小时的区别)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谈RGB色彩图片相似度用到的最强六色归一
- 下一篇: 教你快速分割每段视频并自动分段导出保存