NSDate date de méthode renvoie un résultat incorrect

Je sais qu'il ya beaucoup de questions de ce type, mais je n'ai pas trouver de solution pour mon cas;
J'ai besoin d'obtenir actuelles et correctes, NSDate objet, pas NSString!
Ce code retourne au mauvais moment (+3 heures), parce que je suis de l'Ukraine.

NSDate *currentDate = [NSDate date];

Comment obtenir de l'actuel NSDate objet de NSDateFormatter? Je sais seulement comment obtenir NSString, mais je n'en ai pas besoin.

EDIT: je suis en utilisant ce code de comparer 2 NSDates à l'aide de NSCalendar objet, voici le code:

NSCalendar *calendar = [NSCalendar currentCalendar];
NSUInteger unitFlags = NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *components = [calendar components:unitFlags fromDate:nowDate toDate:endDate options:0];

et components.hour me montre +3 heures de différence

Montrer le code de la façon dont vous avez obtenu nowDate et endDate
à des fins de test, vous pouvez configurer votre changer le fuseau horaire de votre mac à londres pour le voir, que la différence sera parti (ou peut-être 1 en raison de l'heure d'été) dans votre simulateur

OriginalL'auteur Timur Mustafaev | 2012-07-12