在iOS开发过程中,我们经常需要把时间转换成我们想要的时间格式,系统提供NSDateFormatter类来处理时间的格式化。
//日期转字符串
NSDate*currentDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormattersetDateFormat:@"YYYY-MM-dd HH:mm:ss"];//设置需要转换的格式
NSString *currentTime = [dateFormatterstringFromDate:currentDate];
//字符串转日期
NSString*createTime = @"2018-11-30 13:40:54";
NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];//实例化一个NSDateFormatter对象
[dateFormatsetDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate*date =[dateFormatdateFromString:createTime];
时间格式符号:
字符:
(:)时间分隔符
(/)日期分隔符
纪元的显示:
G:显示AD,也就是公元
年的显示:
yy:年的后面2位数字
yyyy:显示完整的年
月的显示:
M:显示成1~12,1位数或2位数
MM:显示成01~12,不足2位数会补0
MMM:英文月份的缩写,例如:Jan
MMMM:英文月份完整显示,例如:January
日的显示:
d:显示成1~31,1位数或2位数
dd:显示成01~31,不足2位数会补0
星期的显示:
EEE:星期的英文缩写,如Sun
EEEE:星期的英文完整显示,如,Sunday
上/下午的显示:
aa:显示AM或PM
小時的显示:
H:显示成0~23,1位数或2位数(24小时制
HH:显示成00~23,不足2位数会补0(24小时制)
K:显示成0~12,1位数或2位数(12小時制)
KK:显示成0~12,不足2位数会补0(12小时制)
分的显示:
m:显示0~59,1位数或2位数
mm:显示00~59,不足2位数会补0
秒的显示:
s:显示0~59,1位数或2位数
ss:显示00~59,不足2位数会补0
S: 毫秒的显示
时区的显示:
z / zz /zzz :PDT
zzzz:Pacific Daylight Time
Z / ZZ / ZZZ :-0800
ZZZZ:GMT -08:00
v:PT
vvvv:Pacific Time