【代码笔记】iOS-和当前时间比较

来源:互联网 发布:达内 java西安 编辑:程序博客网 时间:2024/04/29 13:23

代码:

复制代码
#import "RootViewController.h"@interface RootViewController ()@end@implementation RootViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];    if (self) {        // Custom initialization    }    return self;}- (void)viewDidLoad{    [super viewDidLoad];    // Do any additional setup after loading the view.     //获得指定日期的格式    NSLog(@"---%@----",[self changeTheDate:@"2013-04-18" ByDateType:@"yyyy-M-dd"]);    //星期几    NSLog(@"---%@---",[self getTheWeekDay:@"2013-04-18"]);        //一年的第几周,每周的第几天,比较两天是不是同一个星期    NSDate* today = [NSDate date];    NSLog(@"--%ld---",(long)[self didWeekOfYear:today]);    NSLog(@"---%ld---",(long)[self didWeekDay:today]);    NSLog(@"---%ld---",(long)[self didSameWeek:today date:today]);        }#pragma -mark -获得指定日期的格式/*获得指定的日期格式  paramDate:日期的字符串表示:“2013-04-18” paramDateType:要转化的日期格式:“yyyy-M-dd”  */- (NSString *)changeTheDate:(NSString *)paramDate ByDateType:(NSString *)paramDateType{    // 将日期转化为需要的格式 yyyy-MM-dd 转化为 yyyy-M-dd        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];    [dateFormatter setDateFormat:@"yyyy-MM-dd"];    NSDate *tempDate = [dateFormatter dateFromString:paramDate];    [dateFormatter setDateFormat:paramDateType];            NSString *theDate= [dateFormatter stringFromDate:tempDate];    NSString *result=[[NSString alloc] initWithString:theDate] ;    return result;    }#pragma -mark -星期几/*星期几*/- (NSString *)getTheWeekDay:(NSString *)paramDate{    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];    [dateFormatter setDateFormat:@"yyyy-M-dd"];    NSDate *theDate= [dateFormatter dateFromString:paramDate];        NSString *result=nil;        NSInteger theWeek=[self didWeekDay:theDate];    switch (theWeek) {        case 1:            result=@"星期日";            break;        case 2:            result=@"星期一";            break;        case 3:            result=@"星期二";            break;        case 4:            result=@"星期三";            break;        case 5:            result=@"星期四";            break;        case 6:            result=@"星期五";            break;        case 7:            result=@"星期六";            break;                    default:            break;    }    return result;                }#pragma -mark -每周的第几天//取当前时间是星期几- (NSInteger) didWeekDay:(NSDate*)date{    NSCalendar *gregorian = [[NSCalendar alloc]                             initWithCalendarIdentifier:NSGregorianCalendar];    NSDateComponents *weekdayComponents = [gregorian components:(NSDayCalendarUnit | NSWeekdayCalendarUnit) fromDate:date];    NSInteger tempweekday = [weekdayComponents weekday];    return tempweekday;}#pragma -mark -每年的第几周//取当前时间是每年中的第几周- (NSInteger) didWeekOfYear:(NSDate*)date{    NSInteger unitFlags = NSWeekOfYearCalendarUnit;    NSCalendar *gregorian = [NSCalendar currentCalendar];    NSDateComponents *weekdayComponents = [gregorian components:unitFlags fromDate:date];    NSInteger weekOfYear = [weekdayComponents weekOfYear];    return weekOfYear;    }#pragma -mark -判断是不是一个星期//判断是不是同一个星期- (BOOL) didSameWeek:(NSDate*)date1 date:(NSDate*)date2{        NSInteger week1 = [self didWeekOfYear:date1];    NSInteger week2 = [self didWeekOfYear:date2];        return week1 == week2;}@end
复制代码

0 0
原创粉丝点击