Bu sorunu çözmek için aşağıdaki işlevi oluşturdum. Nasıl çalışır: bu yerel saatin GMT'ye dönüştürüldüğünü varsayın - 2016-04-14 21:00:00 +0000
ve aşağıdaki işlevi kullanarak dönüştürdüğümde, burada Yeni Delhi Hindistan'dayım GMT + 05: 30 olan, o zaman sabahın 2.30'unu alacağım.
+(NSString*)getLocalTimeFromGMTzero : (NSString*)GMTzerioTimeString {
NSDateFormatter *df = [NSDateFormatter new];
[df setDateFormat:@"yyyy-MM-dd HH:mm"];
//Create the date assuming the given string is in GMT
df.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
NSDate *date = [df dateFromString:GMTzerioTimeString];
//Create a date string in the local timezone
df.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:[NSTimeZone localTimeZone].secondsFromGMT];
NSString *localDateString = [df stringFromDate:date];
NSLog(@"date = %@", localDateString);
return localDateString;
}
Saat, sunucuya gönderilmeden önce UTC'ye dönüştürülmeli, böylece zamanlar yerel saat dilimi bilgileriyle dönüştürülebilir. – zcui93