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;
}