1
votes

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?

3
In india.. but working for US... - Gopinath
Do you see where it has +0000? I think that's saying that it's showing GMT+0000, so Greenwich Mean Time as if you were in England. - Nathan White

3 Answers

2
votes

You need to put timezone as:

theDateFormatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];

Because it is considering GMT time format.

1
votes

You have to set the time zone of the NSDateFormatter.

0
votes

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