#define kDEFAULT_DATE_TIME_FORMAT (@"yyyy-MM-dd HH:mm:ss")
//获取当前日期,时间
+(NSDate *)getCurrentDate{
NSDate *now = [NSDate date];
return now;
}
//将日期转换为字符串(日期,时间)
+(NSString *)getDateStringFromDate:(NSDate *)date{
NSInteger location = 0;
NSString *timeStr = @"";
NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
[formatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];
[formatter setDateFormat:@"HH:mm:a"];
NSString *ampm = [[[formatter stringFromDate:date] componentsSeparatedByString:@":"] objectAtIndex:2];
timeStr = [formatter stringFromDate:date];
NSRange range = [timeStr rangeOfString:[NSString stringWithFormat:@":%@",ampm]];
location = range.location;
NSString *string = [timeStr substringToIndex:location];
timeStr = [NSString stringWithFormat:@"%@ %@",ampm,string];
NSString *dateStr = @"";
NSDateFormatter *Dformatter = [[[NSDateFormatter alloc] init] autorelease];
[Dformatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];
[Dformatter setDateFormat:@"yyyy-MM-dd"];
dateStr = [Dformatter stringFromDate:date];
// NSLog(@"%@", [NSString stringWithFormat:@"%@ %@",dateStr,timeStr]);
return [NSString stringWithFormat:@"%@ %@",dateStr,timeStr];
}
//计算两个日期之间的差距,过了多少天。。
+(NSInteger)getDateToDateDays:(NSDate *)date withSaveDate:(NSDate *)saveDate{
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];
NSUInteger unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit |
NSSecondCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit;
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:date toDate:saveDate options:0];
NSInteger diffDay = [ cps day ];
[chineseClendar release];
return diffDay;
}
例:NSDate *lastDate = [self getSaveDate];//saveDate通过将NSDate转换为NSString来保存
currentDate = [NSDate date];
NSInteger day = [DateHelper getDateToDateDays:currentDate withSaveDate: lastDate];
//日期转字符串
+ (NSString * )NSDateToNSString: (NSDate * )date
{
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat: kDEFAULT_DATE_TIME_FORMAT];
NSString *dateString = [formatter stringFromDate:date];
[formatter release];
return dateString;
}
//字符串转日期
+ (NSDate * )NSStringToNSDate: (NSString * )string
{
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat: kDEFAULT_DATE_TIME_FORMAT];
NSDate *date = [formatter dateFromString :string];
[formatter release];
return date;
}
//1970年到现在的秒数转换成时间显示
- (NSString *)bySecondGetDate:(NSString *)second{
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy年MM月dd日 HH:mm:ss"];
NSString *dateLoca = [NSString stringWithFormat:@"%@",second];
NSTimeInterval time=[dateLoca doubleValue];
NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time];
NSString *timestr = [formatter stringFromDate:detaildate];
return timestr;
}
NSDate使用大全
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- cocoapods安装,使用,常见安装过程中出现错误解决方法如下: 一:也经安装好cocoapods后在项目中使用...
- 本文作者陈云峰,转载请注明。 这篇文章记录个人常用的一些命令,和记不住的一些命令,转载了并不断更新。 Git官网 ...