Objective-C_语言 练习题2

//dateString 格式:2015-12-17 08:08:08

/*
 
 传入时间与现在时间 差距60秒内,输出@“刚刚”
 差距1小时内,输出@“xx分钟前”
 差距1-24小时内,输出@“xx小时前”
 差距大于一天,输出@“xx天前”
 差距大于30天,输出@“xx个月前”
 差距 大于365天,输出@“完整日期”
 
 */
main.m
===========================================================
#import <Foundation/Foundation.h>
#import "Tool.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
    NSString *string = @"2015-12-18 08:44:44";
      NSString *string1 = [Tool handleDate:string];
        NSLog(@"%@",string1);
}

=================================================================
Tool.h
#import <Foundation/Foundation.h>

@interface Tool : NSObject

+(NSString *)handleDate:(NSString *)dateString;

@end

===============================================================================
Tool.m

#import "Tool.h"

@implementation Tool

+(NSString *)handleDate:(NSString *)dateString
{
    NSDateFormatter *dateFormatter = [NSDateFormatter new];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
     NSDate *date1 = [dateFormatter dateFromString:dateString];
    NSMutableString *string = [NSMutableString new];
    if (date1 == nil)
    {
        return @"请按格式输入正确日期";
    }
   
    NSTimeInterval timeInterval = date1.timeIntervalSinceNow;
    timeInterval *= -1;
    if (timeInterval >=0 && timeInterval < 60
        )
    {
        [string appendString:@"刚刚"];
    }
    if (timeInterval >= 60 && timeInterval < 3600)
    {
        int min = timeInterval / 60;
        [string appendFormat:@"%d分钟前",min];
    }
    if (timeInterval >= 3600 && timeInterval<3600*24)
    {
        int hour = timeInterval / 3600;
        [string appendFormat:@"%d小时前",hour];
    }
    if (timeInterval >= 86400 && timeInterval < 86400*30)
    {
        int day = timeInterval / (3600*24);
        [string appendFormat:@"%d日前",day];
    }
    else if (timeInterval >= 3600*24*30 && timeInterval < 3600*24*30*12)
    {
        int month =timeInterval / (3600*24*30);
        [string appendFormat:@"%d个月前",month];
    }
    else if (timeInterval > 3600*24*30*12)
    {
        string = [NSMutableString stringWithString:dateString];
    }
    else
    {
        NSString *string2 = @"请按格式输入正确日期";
        [string appendString:string2];
    }
    return string;
    
    
}
@end


 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值