Tim*_*aev 1 objective-c nsdate nsstring nsdateformatter ios
我尝试将我转换NSString为NSDate对象,但NSDateFormatter返回一个奇怪的值.
这是代码:
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:@"2012-08-15 00:00"];
[dateFormat release];
Run Code Online (Sandbox Code Playgroud)
date价值是2012-08-14 21:00 +0000.NSString价值和NSDate价值之间有3个小时的差异.我想我错过了什么,但我不知道是什么.
这是我用的:
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];
NSDate *date = [dateFormat dateFromString:@"2012-08-15 00:00:00 +0000"];
NSLog(@"\n\n DATE: %@ \n\n\n", date);
Run Code Online (Sandbox Code Playgroud)
这+0000是时区,所以一定要使用你的时区+0400.
编辑:如果您无法更改字符串,则可以使用此代码执行此操作:
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
[dateFormat setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSDate *date = [dateFormat dateFromString:@"2012-08-15 00:00"];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4540 次 |
| 最近记录: |