在我的应用中,我不想在手机上使用当地时间。我想获得格林尼治标准时间的当前时间。为此,我有一个日期格式化程序,时区设置为GMT。然后,我执行以下操作以获取当前时间:
NSString *dateOne = [df stringFromDate:[NSDate date]];
NSDate *date1 = [df dateFromString:dateOne];
我的应用虽然在dateFromString调用上获得了EXC_BAD_ACCESS。我检查了dateOne返回的值,它的格式与dateformatters匹配。我究竟做错了什么?有更好的方法吗?
由于
编辑:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-mm-dd HH:mm:ss"];
答案 0 :(得分:0)
或许更容易:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-mm-dd HH:mm:ss"];
NSTimeZone *tz = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormatter setTimeZone:tz];
NSDate *date = [NSDate date];
NSString *dateString = [dateFormatter stringFromDate:date];
NSLog(@"Time now in GMT: %@",dateString);