年
y 顯示不帶前導零的年份(2009鸦做、2019)
yy 顯示帶前導零的年份后兩位(09、19)
yyy 顯示四位數(shù)字年份(2009、2019)
yyyy 顯示四位數(shù)字年份(2009旭从、2019)
Y / YY / YYY / YYYY 格式與上面一致,只是將這一年中第一周的周日當作今年的第一天憨闰,所以慎重使用。
月
M/L 顯示不帶前導零的月份(1需五、12)
MM/LL 顯示帶前導零的月份(01鹉动、12)
MMM/LLL 顯示為縮寫形式的月份(根據(jù)語言顯示為1月或Jan)
MMMM/LLLL 顯示完整形式的月份(根據(jù)語言顯示為一月或January)
1月 一月 Jan January
2月二月 Feb February
3月 三月 Mar March
4月 四月 Apr April
5月 五月 May May
6月 六月 Jun June
7月 七月 Jul July
8月 八月 Aug August
9月 九月 Sep September
10月 十月 Oct October
11月 十一月 Nov November
12月 十二月 Dec December
日
d 顯示不帶前導零的日期(1、12)
dd 顯示帶前導零的日期(01宏邮、12)
D 顯示當前日期是這一年的第幾天泽示,不帶前導零(5缸血、65、351)
DD 顯示當前日期是這一年的第幾天械筛,帶前導零(05捎泻、65、351)
DDD 顯示當前日期是這一年的第幾天埋哟,帶前導零 (005笆豁、065、351)
星期
e/c 顯示當前日期是這一周的第幾天赤赊,不帶前導零 (周四為5闯狱,因為以周天為1開始算)
ee/cc 顯示當前日期是這一周的第幾天,帶前導零 (05)
eee/E/EE/EEE/ccc 顯示當前日期是周幾 (周四抛计、Thu)
eeee/EEEE/cccc 顯示當前日期是星期幾 (星期四哄孤、Thursday)
小時
h/K 根據(jù)設置12/24小時制顯示為不帶前導零的小時數(shù)字 (12小時制的下午四點:4、24小時制的下午四點:16)
hh/KK 根據(jù)設置12/24小時制顯示為帶前導零的小時數(shù)字 (12小時制的下午四點:04吹截、24小時制的下午四點:16)
H/k 使用24小時制顯示為不帶前導零的小時數(shù)字
HH/kk 使用24小時制顯示為帶前導零的小時數(shù)字
分鐘
m 將分鐘顯示為不帶前導零的數(shù)字
mm 將分鐘顯示為帶前導零的數(shù)字
秒
s 將秒顯示為不帶前導零的數(shù)字
ss 將秒顯示為帶前導零的數(shù)字
上午瘦陈、下午
a 顯示上午/下午、AM/PM
時區(qū)
z/zz/zzz 顯示不帶前導零的GMT時區(qū)偏移量(GMT+8)
zzzz 顯示指定GMT時區(qū)的名稱(中國標準時間)
Z/ZZ/ZZZ 顯示如 +0800
ZZZZ 顯示如 GMT+08:00
季度
q/Q 顯示當前是第幾季度(1波俄、4)
qq/QQ 顯示當前是第幾季度(01晨逝、04)
qqq/QQQ 顯示當前是第幾季度(1季度、Q1)
qqqq/QQQQ 顯示當前是第幾季度(第一季度懦铺、1st quarter)
紀元
g 顯示朱利安日數(shù)(距離公元前4713年1月1日起的天數(shù))
G 顯示時代/紀元字符串(比如 A.D.或公元)
其他
A 該時間是那天的第幾微秒
F/W 顯示當前星期為當前月的第幾周咏花,范圍為1~5。
w 顯示當前是這一年的第幾周阀趴,不帶前導零(一周的開始為周日,第一周從去年的最后一個周日起算)
ww 顯示當前是這一年的第幾周苍匆,帶前導零
利用格式字符串將NSDate對象轉換成字符串:
NSDateFormatter *dateStringFormatter = [[NSDateFormatter alloc] init];
[dateStringFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *currentDate = [NSDate date];
NSLog(@"date string: %@", [dateStringFormatter stringFromDate:currentDate]); // 2017-08-03 16:13:03
另:NSDateFormatter過度使用會導致APP卡頓刘急,如需頻繁使用,建議緩存單例:
static NSDateFormatter *dateFormatter = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
dateFormatter = [[NSDateFormatter alloc] init];
});