In my iPhone application i am very struggling to convert the webservice response time to current device time. The webservice time in UTC-5 timezone
. The app is worldwide use app. So i have to convert the response time to current device timezone. This is simple messaging app.
When i have sent a message the time is "5:05 PM" (India Chennai timezone)
but when am retrieve time from webservice is "2012-07-16 07:33:01"
. When i show the time in the app i should convert the time to device's local time. I have tried in some way but i can't solve yet. Code is:
NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
[dateFormatter1 setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
[dateFormatter1 setLocale:[NSLocale currentLocale]];
//[dateFormatter1 setTimeZone:[NSTimeZone timeZoneWithName:@"IST"]];
[dateFormatters setTimeZone:[NSTimeZone systemTimeZone]];
NSDate *date = [dateFormatter1 dateFromString:dateStr];
NSLog(@"date : %@",date);
But the output date and time is 2012-07-16 02:03:01 +0000
I have stored this date/time in Coredata
and when I have retrieve from CoreData
and covert to NSString
using the below code,
NSDateFormatter *dateFormatters = [[NSDateFormatter alloc] init];
[dateFormatters setDateFormat:@"dd-MMM-yyyy hh:mm"];
[dateFormatters setDateStyle:NSDateFormatterShortStyle];
[dateFormatters setTimeStyle:NSDateFormatterShortStyle];
[dateFormatters setDoesRelativeDateFormatting:YES];
[dateFormatters setTimeZone:[NSTimeZone systemTimeZone]];
dateStr = [dateFormatters stringFromDate:dateString];
NSLog(@"DateString : %@", dateStr);
The output date and time is "Today 7:33 AM
". It should be show "Today 5:05 PM
". Can anyone please save my day? Please help to solve this issue. Thanks in advance.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…