ios 比较两个日期格式(NSString,NSDate)的大小/前后

简介:

ios 比较两个日期格式(NSString,NSDate)的大小/前后

方法已封装!日期格式请传入:2013-08-05 12:12:12;如果修改日期格式,比如:2013-08-05,则将[df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];修改为[df setDateFormat:@"yyyy-MM-dd"];

-(int)compareDate:(NSString*)date01 withDate:(NSString*)date02{

    int ci;

    NSDateFormatter *df = [[NSDateFormatter alloc] init];

    [df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSDate *dt1 = [[NSDate alloc] init];

    NSDate *dt2 = [[NSDate alloc] init];

    dt1 = [df dateFromString:date01];

    dt2 = [df dateFromString:date02];

    NSComparisonResult result = [dt1 compare:dt2];

    switch (result)

    {

        //date02比date01大

        case NSOrderedAscending: ci=1; break;

        //date02比date01小

        case NSOrderedDescending: ci=-1; break;

        //date02=date01

        case NSOrderedSame: ci=0; break;

        default: NSLog(@"erorr dates %@, %@", dt2, dt1); break;

    }

    return ci;

}

 










本文转自 卓行天下  51CTO博客,原文链接:http://blog.51cto.com/9951038/1747479,如需转载请自行联系原作者
目录
相关文章
|
iOS开发
IOS——NSDate昨天、今天、明天
IOS——NSDate昨天、今天、明天
91 0
|
iOS开发 Swift
iOS - Swift NSDate 时间
前言 NSDate public class NSDate : NSObject, NSCopying, NSSecureCoding NSDate 用来表示公历的 GMT 时间(格林威治时间)。
1563 0
|
iOS开发
IOS学习笔记之十七 (NSDate、NSDateFormatter、NSCalendar、NSDateComponents、NSTimer)
IOS学习笔记之十七 (NSDate、NSDateFormatter、NSCalendar、NSDateComponents、NSTimer)
137 0
|
Java iOS开发
IOS学习笔记十六(NSString和NSMutableString)
IOS学习笔记十六(NSString和NSMutableString)
121 0
|
Serverless 数据安全/隐私保护 iOS开发
iOS NSString 加密
NSString+Hash.h #import @interface NSString (Hash) #pragma mark - 散列函数 /** * 计算MD5散列结果 * * 终端测试命令: * @code * md5 -s "string" * @endcode * * 提示:随着 MD5 碰撞生成器的出现,MD5 算法不应被用于任何软件完整性检查或代码签名的用途。
867 0
|
iOS开发 程序员
iOS 9.0之后NSString encode方法替换
在iOS 9.0之后,以前常用的NSString编码的方法stringByAddingPercentEscapesUsingEncoding:被弃用了,项目中可能会出现一堆如下️: 'stringByAddingPercentEscapesUsin...
1106 0
|
iOS开发
iOS - OC NSDate 时间
前言 NSDate @interface NSDate : NSObject NSDate 用来表示公历的 GMT 时间(格林威治时间)。是独立与任何历法的,它只是时间相对于某个时间点的时间差;NSDate 是进行日历计算的基础。
1095 0