NSDate与NSString的互相转化

1、NSDate转化为NSString

注:yyyy-MM-dd-HH-mm-ss 中间的连字符可自定义

yyyy表示年,MM表示月dd表示天,HH表示24小时制得时(hh表示12小时制)mm表示分,ss表示秒。(大小写是不可以变得) 

-(NSString *)dateToNSString:(NSDate *)date{
    NSDateFormatter * formatter = [[NSDateFormatter alloc]init];
    [formatter setDateFormat:@"yyyy-MM-dd-HH-mm-ss"];
    NSString * strDate = [formatter stringFromDate:date];
    return strDate;
}

2、NSString转化为NSDate

注:此方法是配合方法1中的“yyyy-MM-dd-HH-mm-ss” 中的连字符使用的 也可以自行改动
-(NSDate *)stringToNSdate:(NSString *)stringDate{
    NSArray * dateArr = [stringDate componentsSeparatedByString:@"-"];
    //日期的 分开输入
    NSCalendar * calendar = [NSCalendar currentCalendar];//创建一个日历用来接收时间
    //输入时区
    NSTimeZone * timezone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];
    //创建时间组件
    NSDateComponents * components = [[NSDateComponents alloc]init];
    [components setTimeZone:timezone];
    NSString * str0 = dateArr[0];
    NSString * str1 = dateArr[1];
    NSString * str2 = dateArr[2];
    NSString * str3 = dateArr[3];
    NSString * str4 = dateArr[4];
    NSString * str5 = dateArr[5];
    [components setYear:str0.intValue];
    [components setMonth:str1.intValue];
    [components setDay:str2.intValue];
    [components setHour:str3.intValue];
    [components setMinute:str4.intValue];
    [components setSecond:str5.intValue];
    NSDate * myTime = [calendar dateFromComponents:components];
    return myTime;
}


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值