-(NSArray*) getDayTimeByNum:(NSInteger)num timeInterval:(NSInteger)interval
{
NSMutableArray *hoursArr = [NSMutableArray array];
NSDate *date;
NSString *currentDateStr;
for (int i=0; i<num; i++) {
date = [[NSDate date] dateByAddingTimeInterval:(-interval*60*60*i)];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd日HH时"];
currentDateStr = [dateFormatter stringFromDate:date];
[hoursArr addObject:currentDateStr];
}
// 倒序排列
NSMutableArray *tempArr = [NSMutableArray array];
for (int i = (int)[hoursArr count]; i>0; i--) {
[tempArr addObject:[hoursArr objectAtIndex:i-1]];
}
hoursArr = tempArr;
return hoursArr;
}
-(NSArray*) getWeekTimeByNum:(NSInteger)num timeInterval:(NSInteger)interval
{
NSMutableArray *daysArr = [NSMutableArray array];
NSDate *date;
NSString *currentDateStr;
for (int i=0; i<num; i++) {
date = [[NSDate date] dateByAddingTimeInterval:(-interval*24*60*60*i)];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MM月dd日"];
currentDateStr = [dateFormatter stringFromDate:date];
[daysArr addObject:currentDateStr];
}
// 倒序排列
NSMutableArray *tempArr = [NSMutableArray array];
for (int i = (int)[daysArr count]; i>0; i--) {
[tempArr addObject:[daysArr objectAtIndex:i-1]];
}
daysArr = tempArr;
return daysArr;
}
-(NSDate*) getCurrentDate
{
// 获得时间对象
NSDate *date = [NSDate date];
// 获得系统时区
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
// 以秒为单位返回当前时间与系统格林尼治时间的差
NSTimeInterval timeInterval = [timeZone secondsFromGMTForDate:date];
// 然后把差的时间加上,就是当前系统准确的时间
NSDate *currentDate = [date dateByAddingTimeInterval:timeInterval];
NSLog(@"当前时间%@",currentDate);
return currentDate;
}
<pre name="code" class="objc">// NSString->NSDate
-(NSString*) NSStringTurnToNSDate:(NSString*)dateStr dateFormat:(NSString*)format strFormat:(NSString*)strFormat
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:format]; // @"yyyy-MM-dd HH:mm:ss"
NSDate *date= [dateFormatter dateFromString:dateStr];
// 获得系统时区
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
// 以秒为单位返回当前时间与系统格林尼治时间的差
NSTimeInterval timeInterval = [timeZone secondsFromGMTForDate:date];
NSDate *dateTemp = [date dateByAddingTimeInterval:timeInterval];
[dateFormatter setDateFormat:strFormat];
NSString *str = [dateFormatter stringFromDate:dateTemp];
return str;
}