IOS / objective-c:将unix时间戳字符串转换为NSDate格式

时间:2015-09-07 16:10:33

标签: ios datetime

我正在尝试以NSDate格式获取当前时间。我已经能够使Unix时间戳工作,但是,当我尝试使用我在SO上找到的答案进行转换和格式化时,我得到一个null结果。我将不胜感激任何关于我做错事的建议。

也有兴趣以更直接的方式获取日期时间格式的当前日期时间,例如2015-09-04 00:55:25 +0000

- (NSDate *) timeStampDate {
    //this returns time in string format
    NSString *string = [NSString stringWithFormat:@"%f",[[NSDate date] timeIntervalSince1970] * 1000];
    NSLog(@"string:%@",string);//this prints fine
    // Convert string to date object
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyyMMdd"];
    NSDate *date = [dateFormat dateFromString:string];
    NSLog(@"date%@",date);//this prints null
    return date;
/* this would go in opposite direction
        [dateFormat setDateFormat:@"EEEE MMMM d, YYYY"];
    string = [dateFormat stringFromDate:date];
 */
}

1 个答案:

答案 0 :(得分:1)

-(NSDate*) timeStampDate {
    NSDate* currentDate = [NSDate date];

    return [NSDate dateWithTimeInterval:
        [[NSTimeZone defaultTimeZone] secondsFromGMTForDate: currentDate]
                          sinceDate: currentDate];
}