您的位置:首页 > 移动开发 > Objective-C

objective-c 中字符串与日期转换和比较

2015-12-03 14:27 573 查看


objective-c 中字符串与日期相互转换

1、字符串转换为日期

  NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];//实例化一个NSDateFormatter对象

    

    [dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//设定时间格式,这里可以设置成自己需要的格式

    

    NSDate *date =[dateFormat dateFromString:@"1980-01-01 00:00:01"]; 

2、日期转换为字符串

  NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init];//实例化一个NSDateFormatter对象

    

    [dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//设定时间格式,这里可以设置成自己需要的格式

  NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]];


objective-c 中字符串与日期相互转换比较

NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 

//注意dateFormatter的格式一定要按字符串的样子来,如果不对,转换出来是nill。

//时区格式,可以不用设置

//NSTimeZone *timeZone = [NSTimeZone localTimeZone];

//[formatter setTimeZone:timeZone];

[dateFormatter setDateFormat:@"YYYY/MM/dd"]; //设置日期格式

NSDate *today = [NSDate date]; //当前日期
NSString *date = @"2011/10/05"; //开始日期

NSDate *newDate = [dateFormatter dateFromString:date];  //开始日期,将NSString转为NSDate

NSLog(@"today:%@", [dateFormatter stringFromDate:today]);

NSLog(@"newDate:%@", [dateFormatter stringFromDate:newDate]);//将NSDate转为NSString

//BOOL b = [today isEqualToDate:newDate];//日期相同返回YES

//NSDate *r = [today earlierDate:newDate];//返回较早的那个日期

NSDate *r = [today laterDate:newDate];  //返回较晚的那个日期

if([today isEqualToDate:newDate]) {

[self.myPayedOrders addObject:ar];

NSLog(@"日期相同");

}else{

if([r isEqualToDate:newDate]) {

NSLog(@"未过期");

// [self.myPayedOrders addObject:ar];

}else{

NSLog(@"已过期");

// [self.myFinishedOrders addObject:ar];

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  开发篇