进行项目开发,很多时候会需要处理时间的问题。比如常处理的有时间与时间戳的相互转换、时间NSDate的格式化为字符串类型,字符串转换为NSDate类型等。就一些简单的常用的时间处理进行封装。
直接撸代码:.h文件
/**
*
* 此类用于时间的处理。具体使用看以下类方法的注释。。
*
* Created by Sheffi on 16/10/17。
*
*/
#import <Foundation/Foundation.h>
@interface processingTime : NSObject
/**
* 时间转换为时间戳方法
*
* @param date 要转换的时间(NSDate的类型)
*
* @return 时间戳字符串
*/
+(NSString *)timeStampWithDate:(NSDate *)date;
/**
* 时间戳转换为时间字符串的方法
*
* @param timeStamp 时间戳
* @param formatString 格式化的格式 例如:@"yyyy-MM-dd HH:mm"
*
* @return 时间字符串
*/
+(NSString *)dateStringWithTimeStamp:(NSString *)timeStamp andFormatString:(NSString *)formatString;
/**
* 格式化NSDate
*
* @param date NSDate类型的时间
* @param formatString 格式化的格式 例如:@"yyyy-MM-dd HH:mm"
*
* @return 格式化后的时间字符串
*/
+(NSString *)dateStringWithDate:(NSDate *)date andFormatString:(NSString *)formatString;
/**
* 获取当前时间并进行格式化
*
* @param formatString 格式化的格式 例如:@"yyyy-MM-dd HH:mm"
*
* @return 返回格式化后的当前时间字符串
*/
+(NSString *)getCurrentDateWithFormatString:(NSString *)formatString;
/**
* 时间字符串转换为NSDate类型
*
* @param dateString 时间字符串
* @param formatString 格式化的格式,注意:这里的格式一定要和传入的时间字符串的格式一致,否则无法进行转换
*
* @return 转换后的时间(NSDate类型)
*/
+(NSDate *)dateWithDateString:(NSString *)dateString andFormatString:(NSString *)formatString;
@end
.m文件具体实现
#import "processingTime.h"
@implementation processingTime
//NSDate转时间戳
+(NSString *)timeStampWithDate:(NSDate *)date{
NSString *timeStamp = [NSString stringWithFormat:@"%ld",(long)[date timeIntervalSince1970]];
return timeStamp;
}
//时间戳转换为时间方法
+(NSString *)dateStringWithTimeStamp:(NSString *)timeStamp andFormatString:(NSString *)formatString{
NSString *dateString;
NSDate *tmpDate = [NSDate dateWithTimeIntervalSince1970:[timeStamp floatValue]];
NSDateFormatter *format=[[NSDateFormatter alloc] init];
[format setDateFormat:formatString];
dateString = [format stringFromDate:tmpDate];
return dateString;
}
//格式化NSDate
+(NSString *)dateStringWithDate:(NSDate *)date andFormatString:(NSString *)formatString{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:formatString];
NSString *dateString = [dateFormatter stringFromDate:date];
NSLog(@"dateString:%@",dateString);
return dateString;
}
//获取当前时间并进行格式化
+(NSString *)getCurrentDateWithFormatString:(NSString *)formatString{
NSDate *currentDate = [NSDate date];//获取当前时间,日期
NSString *currentDateString = [self dateStringWithDate:currentDate andFormatString:formatString];
return currentDateString;
}
//将时间字符串转换成NSDate格式
+(NSDate *)dateWithDateString:(NSString *)dateString andFormatString:(NSString *)formatString{
NSDate *tmpDate;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:formatString];
tmpDate = [dateFormatter dateFromString:dateString];
return tmpDate;
}
@end
以上如有错误,请留言指出。感激不尽。
微信公众号:不靠谱程序猿 微信公众号:Sheffi_Programmer
Github:Sheffi(https://github.com/goingmyway1)
新浪微博:Sheffi567
掘金:Sheffi(http://gold.xitu.io/user/57c13791128fe1005fc0b245)