1.正确获取中国时区的时间
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];
dateFormatter.dateFormat = @"yyyy:mm:dd HH:mm:ss";
return [dateFormatter stringFromDate:[NSDate date]];
2.打印年月日,时分秒以及星期
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSString *str1 = [self format: @"yyyy-MM-dd HH:mm:ss" dateTime:[NSDate date]];
NSString *str2 = [self format: @"MM月dd日(cccc) HH:mm:ss" dateTime:[NSDate date]];
NSLog(@"%@==%@",str1,str2);
}
- (NSString *)format:(NSString *)formatter dateTime:(NSDate *)dateTime{
if (dateTime == nil) {
return @" ";
}
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];
dateFormatter.dateFormat = formatter;
return [dateFormatter stringFromDate:dateTime];
}
- 把时间转换成一天中指定的时间段
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// NSString *str1 = [self format: @"yyyy-MM-dd HH:mm:ss" dateTime:[NSDate date]];
//
// NSString *str2 = [self format: @"MM月dd日(cccc) HH:mm:ss" dateTime:[NSDate date]];
//
// NSLog(@"%@==%@",str1,str2);
NSLog(@"%@",[self translateDateWithDate:[NSDate date]]);
}
// 把时间转换成一天中指定的时间段
- (NSString *)translateDateWithDate:(NSDate *)date
{
/*
0 - 6 凌晨
6 - 11:30 早上
11:31 - 12:30 中午
12:31 - 18:00 下午
18:01 - 24:00 晚上
*/
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];
dateFormatter.dateFormat = @"HH:mm";
NSString *dateStr = [dateFormatter stringFromDate:date];
NSString *hoursMinInteger = [dateStr stringByReplacingOccurrencesOfString:@":" withString:@""];
NSInteger hours = hoursMinInteger.integerValue;
NSString *returnDate = nil;
if (hours > 0 && hours < 600) {
returnDate = [@"凌晨" stringByAppendingString:dateStr];
}else if (hours >= 600 && hours < 1130){
returnDate = [@"上午" stringByAppendingString:dateStr];
}else if (hours >= 1131 && hours <1230 ){
returnDate = [@"中午" stringByAppendingString:dateStr];
}else if (hours >= 1231 && hours < 1800){
returnDate = [@"下午" stringByAppendingString:dateStr];
}else if (hours >= 1801 && hours <= 2400){
returnDate = [@"晚上" stringByAppendingString:dateStr];
}
return returnDate;
}