如何在 IOS 中将 GMT 转换为 IST?我有代码,可以让我在 GMT 有时间。但我想将其转换为相应的本地时区并在我的应用程序中使用它。我怎样才能做到这一点 ?提前致谢。
问问题
4930 次
3 回答
8
下面的代码将 GMT 转换为 IST。
NSString *inDateStr = @"2000/01/02 03:04:05";
NSString *s = @"yyyy/MM/dd HH:mm:ss";
// about input date(GMT)
NSDateFormatter *inDateFormatter = [[NSDateFormatter alloc] init];
inDateFormatter.dateFormat = s;
inDateFormatter.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSDate *inDate = [inDateFormatter dateFromString:inDateStr];
// about output date(IST)
NSDateFormatter *outDateFormatter = [[NSDateFormatter alloc] init];
outDateFormatter.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"IST"];
outDateFormatter.dateFormat = s;
NSString *outDateStr = [outDateFormatter stringFromDate:inDate];
// final output
NSLog(@"[in]%@ -> [out]%@", inDateStr, outDateStr);
于 2012-08-04T12:07:14.313 回答
1
[(NSDateFormatter *) setTimeZone:[NSTimeZone localTimeZone]]; this will give u the local conversion of the GMT to local time zone.
于 2012-08-04T11:09:56.230 回答
1
我在下面的代码中使用了将 GMT 转换为 IST。
NSTimeZone *zone1=[NSTimeZone localTimeZone];
long second=[zone1 secondsFromGMT]; //offset
NSDate *currentdate=[NSDate date];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MMddyyyy hh:mm:ss"]; // format
[dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:second]];
dateStr = [dateFormat stringFromDate:currentdate];
NSLog(@"Current date %@",dateStr);
这可能会有所帮助。
谢谢
于 2016-06-09T14:42:05.993 回答