NSdate 与NString之间的转换

.h文件:

@interface Date : NSObject

+ (Date *)shareDate;

// 时间戳转日期
- (NSString *)getDateStringWithDateWithTimeIntervalSince1970:(NSTimeInterval)timeInterval formatString:(NSString *)formatString;
// 时间戳转时间
- (NSDate *)getDateWithTimeIntervalSince1970:(NSTimeInterval)timeInterval;
// 时间转时间戳
- (NSTimeInterval)getTimeIntervalWtihDate:(NSDate *)date;
// 日期格式化成字符串
- (NSString *)getdateStringFromDate:(NSDate *)date format:(NSString *)format;
// 字符串格式化成日期
- (NSDate *)getDateFromDateString:(NSString *)dateString format:(NSString *)format;
// 获取时间差
- (NSTimeInterval)getTimeDifference:(NSDate *)firstDate secondDate:(NSDate *)secondDate;
// 获得时间差字符串
- (NSString *)getTimeDifferenceString:(NSTimeInterval)timeInterval initiallyString:(NSString *)initiallyString;


@end

.M文件:


#import "Date.h"

@implementation Date

+ (Date *)shareDate
{
    static Date * date;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        date = [[Date alloc] init];
    });
    return date;
}

// 时间戳转日期
- (NSString *)getDateStringWithDateWithTimeIntervalSince1970:(NSTimeInterval)timeInterval formatString:(NSString *)formatString
{
    NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:timeInterval];
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:formatString];
    NSString *currentDateStr = [dateFormatter stringFromDate: detaildate];
    return currentDateStr;
}

// 时间戳转时间
- (NSDate *)getDateWithTimeIntervalSince1970:(NSTimeInterval)timeInterval
{
    NSDate *confromTimesp = [NSDate dateWithTimeIntervalSince1970:timeInterval];
    return confromTimesp;
}

// 时间转时间戳
- (NSTimeInterval)getTimeIntervalWtihDate:(NSDate *)date{
    return [date timeIntervalSince1970];
}

// 日期格式化成字符串
- (NSString *)getdateStringFromDate:(NSDate *)date format:(NSString *)format
{
    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:format];
    return [formatter stringFromDate:date];
}

// 字符串格式化成日期
- (NSDate *)getDateFromDateString:(NSString *)dateString format:(NSString *)format
{
    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:format];
    return [formatter dateFromString:dateString];
}

// 获取时间差
- (NSTimeInterval)getTimeDifference:(NSDate *)firstDate secondDate:(NSDate *)secondDate
{
    NSTimeInterval seconds = [firstDate timeIntervalSinceDate:secondDate];
    return seconds;
}

// 获得时间差字符串
- (NSString *)getTimeDifferenceString:(NSTimeInterval)timeInterval initiallyString:(NSString *)initiallyString
{
    if (timeInterval >= 86400) {
        int days = (int)timeInterval / 86400;
        int hours = (int)timeInterval % 86400 / 3600;
        int minuters = (int)timeInterval % 3600 / 60;
        int seconds = (int)timeInterval % 60;
        return [NSString stringWithFormat:@"%@%d天%d小时%d分钟%d秒",initiallyString,days,hours,minuters,seconds];
    }else if (timeInterval < 86400 && timeInterval >= 3600) {
        int hours = (int)timeInterval / 3600;
        int minuters = (int)timeInterval % 3600 / 60;
        int seconds = (int)timeInterval % 60;
        return [NSString stringWithFormat:@"%@%d小时%d分钟%d秒",initiallyString,hours,minuters,seconds];
    }else if (timeInterval < 3600 && timeInterval >= 60) {
        int minuters = (int)timeInterval / 60;
        int seconds = (int)timeInterval % 60;
        return [NSString stringWithFormat:@"%@%d分钟%d秒",initiallyString,minuters,seconds];
    }else if (timeInterval < 60 && timeInterval > 0) {
        int seconds = (int)timeInterval % 60;
        return [NSString stringWithFormat:@"%@%d秒",initiallyString,seconds];
    }
    return nil;
}


@end

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值