GMT fuseau horaire de conversion en objective-c

Je suis en train de convertir nsstring à nsdate, puis à la systemtimezone. Est mon code de droit? Toute aide appréciée.

NSString *str=@"2012-01-15 06:27:42";

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehaviorDefault];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *dateFromString = [dateFormatter dateFromString:str];

NSDate* sourceDate = dateFromString;

NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT-07:00"];
NSTimeZone* destinationTimeZone = [NSTimeZone systemTimeZone];

NSInteger sourceGMTOffset = [sourceTimeZone secondsFromGMTForDate:sourceDate];
NSInteger destinationGMTOffset = [destinationTimeZone secondsFromGMTForDate:sourceDate];
NSTimeInterval interval = destinationGMTOffset - sourceGMTOffset;

NSDate* destinationDate = [[[NSDate alloc] initWithTimeInterval:interval sinceDate:sourceDate] autorelease];

bottomLabel2.text=[NSString stringWithFormat:@"- %@ -",destinationDate];

Le code de résultat est 2012-01-15 06:27:42 +0000 qui est la même que la source!

Est-ce que mon code de droit?" n'est pas la question à se poser ici. codereview.stackexchange.com
Je ne pense pas que l'affiche originale est de demander un examen, mais a peut-être pas clairement le problème. De toute façon, j'ai répondu ci-dessous.

OriginalL'auteur stefanosn | 2012-01-15