1

IOSでGMTをISTに変換するにはどうすればよいですか?GMTで時間を与えるコードがあります。しかし、それを対応するローカルタイムゾーンに変換して、アプリで使用したいと思います。これどうやってするの ?前もって感謝します。

4

3 に答える 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 に答える