问题
I getting the date from the webservice like "2012-07-03 07:26:48". I have saved in NSString after parsing from webservice. While convert the NSString to NSDate used below code,
NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
[dateFormatter1 setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSString *dateStr = @"2012-07-03 07:26:48";
NSDate *date = [dateFormatter1 dateFromString:dateStr];
NSLog(@"Date : %@", date);
The NSLog value is "2012-07-03 01:56:48 +0000";
The NSLog value is "2012-07-03 01:56:48 +0000"; I don't know why the time has changed. Can anyone please help me to do this?
回答1:
You need to put timezone as:
theDateFormatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
Because it is considering GMT time format.
回答2:
You have to set the time zone of the NSDateFormatter
.
回答3:
By default,Date is saved in utc format while converting string to nsdate... you can get original time from date as a string..if you want to change timezone, change it using dateformatter.. otherwise dont change
来源:https://stackoverflow.com/questions/11396609/how-to-convert-nsstring-to-nsdate-using-nsdateformatter