z22*_*z22 5 timezone objective-c ios
我想将以下时区转换为设备本地时区:
2013-08-03T05:38:39.590Z
Run Code Online (Sandbox Code Playgroud)
请让我知道如何将其转换为本地时区.
我该怎么做?
Chr*_*uer 11
时区可以应用于NSDateFormatter,您可以从中生成由时差区分的NSDate变量.
NSString* input = @"2013-08-03T05:38:39.590Z";
NSString* format = @"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
// Set up an NSDateFormatter for UTC time zone
NSDateFormatter* formatterUtc = [[NSDateFormatter alloc] init];
[formatterUtc setDateFormat:format];
[formatterUtc setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
// Cast the input string to NSDate
NSDate* utcDate = [formatterUtc dateFromString:input];
// Set up an NSDateFormatter for the device's local time zone
NSDateFormatter* formatterLocal = [[NSDateFormatter alloc] init];
[formatterLocal setDateFormat:format];
[formatterLocal setTimeZone:[NSTimeZone localTimeZone]];
// Create local NSDate with time zone difference
NSDate* localDate = [formatterUtc dateFromString:[formatterLocal stringFromDate:utcDate]];
NSLog(@"utc: %@", utcDate);
NSLog(@"local: %@", localDate);
[formatterUtc release];
[formatterLocal release];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9970 次 |
| 最近记录: |