如何在 iOS 中将字符串 Date 转换为 NSDate
How to convert a string Date to NSDate in iOS
我用谷歌搜索了很多次,但我对给定的答案不满意。请任何人都可以给出我需要的正确答案。
这是从数据库中检索的日期字符串:2015-05-27 10:19 (yyyy-MM-dd HH:mm)
我想转换成 NSDate
.
我的代码如下:
NSString *date_str = @"2015-05-27 10:19";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:date_str];
NSLog(@"date == %@",date);
但输出是:date == 2015-05-27 04:49:00 +0000
它显示 04:49:00 时间,但我的检索时间是 10:19.
如何从数据库中检索完美时间。
请帮帮我..
只需像这样将您的日期转换为 GMT 时间:-
NSString *date_str = @"2015-05-27 10:19";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormat setTimeZone:gmt];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:date_str];
而输出是:-
date == 2015-05-27 10:19:00 +0000
而要获取不带+0000的日期,可以直接存入NSString:-
NSString *s = [dateFormat stringFromDate:date];
输出:-
2015-05-27 10:19
您在转换时遇到了时区问题,因为服务器时间和当地时区可能存在差异。所以处理这个你需要将时区设置为你的日期格式化程序,如
[dateFormater setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
我用谷歌搜索了很多次,但我对给定的答案不满意。请任何人都可以给出我需要的正确答案。
这是从数据库中检索的日期字符串:2015-05-27 10:19 (yyyy-MM-dd HH:mm)
我想转换成 NSDate
.
我的代码如下:
NSString *date_str = @"2015-05-27 10:19";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:date_str];
NSLog(@"date == %@",date);
但输出是:date == 2015-05-27 04:49:00 +0000
它显示 04:49:00 时间,但我的检索时间是 10:19.
如何从数据库中检索完美时间。
请帮帮我..
只需像这样将您的日期转换为 GMT 时间:-
NSString *date_str = @"2015-05-27 10:19";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormat setTimeZone:gmt];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:date_str];
而输出是:-
date == 2015-05-27 10:19:00 +0000
而要获取不带+0000的日期,可以直接存入NSString:-
NSString *s = [dateFormat stringFromDate:date];
输出:-
2015-05-27 10:19
您在转换时遇到了时区问题,因为服务器时间和当地时区可能存在差异。所以处理这个你需要将时区设置为你的日期格式化程序,如
[dateFormater setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];