Question

Je suis en train d'accéder uniquement les informations heures et minutes d'un NSDate.

Alors je NSCalendar de le faire. Voici mon code:

     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"hh:mm"];
    NSDate *date = [NSDate date];
    NSCalendar *calendar = [NSCalendar currentCalendar];
    NSDateComponents *components = [calendar components:(kCFCalendarUnitHour | kCFCalendarUnitMinute) fromDate:date];
    NSInteger hour = [components hour];
    NSInteger minute = [components minute];
    NSLog(@"%@",date description);
    NSLog(@"Hour : %d MInutes: %d",hour,minute);

Il ne me donne pas la bonne information. Ci-dessous le journal:

18/10/2011 18: 46: 12,194 DateTest [1182: 707] 18.10.2011 13:16:12 +0000 18/10/2011 18: 46: 12,198 DateTest [1182: 707] Heure: 18 minutes: 46

Un autre doute est quand le temps est 18: 46: 12,194 il est connecté comme 13:16:12. Pourquoi cette différence?

Était-ce utile?

La solution

Parce que vous vivez dans une zone de temps qui est de 5,5 heures d'avance sur GMT, et la méthode de NSDate de -description retourne toujours une chaîne formatée dans le fuseau horaire de GM.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top