时间字符串转换

 G: 公元时代,例如AD公元

    yy: 年的后2位

    yyyy: 完整年

    MM: 月,显示为1-12

    MMM: 月,显示为英文月份简写,如 Jan

    MMMM: 月,显示为英文月份全称,如 Janualy

    dd: 日,2位数表示,如02

    d: 日,1-2位显示,如 2

    EEE: 简写星期几,如Sun

    EEEE: 全写星期几,如Sunday

    aa: 上下午,AM/PM(xcode8之前aa表示上下午,之后aa表示am/pm,官方代码看不到,做个提醒,如果你是xcode8之前的编辑器,最好把am/pm转成上下午做,网上有传tt可以代表am/pm,楼主亲测,无效)

    H: 时,24小时制,0-23

    K:时,12小时制,0-11

    m: 分,1-2位

    mm: 分,2位

    s: 秒,1-2位

    ss: 秒,2位

    S: 毫秒

 

1.date转string

NSDate *date=[NSDate date];
 
NSLog(@"%@",date);//2015-11-20 00:37:40 +0000
 
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];//创建一个日期格式化器
 
dateFormatter.dateFormat=@"yyyy-MM-dd hh:mm:ss";//指定转date得日期格式化形式
 
NSLog(@"%@",[dateFormatter stringFromDate:date]);//2015-11-20 08:24:04
 
 dateFormatter.dateFormat=@"yyyy-MM-dd";
 
NSLog(@"%@",[dateFormatter stringFromDate:date]);//2015-11-20
 
 dateFormatter.dateFormat=@"yyyy-MM-dd eeee aa HH:mm:ss";
 
 NSLog(@"%@",[dateFormatter stringFromDate:date]);//2015-11-20 Friday AM 08:30:28
 
dateFormatter.dateFormat=@"yyyy-MM-dd hh:mm:ss z";
 
NSLog(@"%@",[dateFormatter stringFromDate:date]);//2015-11-20 08:42:22 GMT+8

 

其实date转string只需要根据格式来就可以了,但是string转date需要注意事项

2.string转date

 

NSString *dateStr=@"2012-5-4 4:34:23";
 
dateFormatter.dateFormat=@"yyyy-mm-dd hh:mm:ss";

 

//输出:2012-05-03 20:34:23 +0000

/*

转化的类型必须与dateFormat保持一致

2012-->y

5->m

4->d

*/

 NSString *birthdayStr=@"1986-03-28 00:00:00.000";
 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
 [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
 [dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:8]];//解决8小时时间差问题
 NSDate *birthdayDate = [dateFormatter dateFromString:birthdayStr];

 

转载于:https://www.cnblogs.com/OIMM/p/10904029.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值