Cet exemple donne secondes écoulées depuis le temps actuel:
NSString *dateString = @"Sat, 09 Oct 2010 18:14:50 +0000";
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"];
NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[df setLocale:usLocale];
[usLocale release];
NSDate *date = [df dateFromString:dateString];
[df release];
NSTimeInterval secondsSinceNow = [date timeIntervalSinceNow];
NSLog(@"date = %@", date);
NSLog(@"secondsSinceNow = %f", secondsSinceNow);
Notez que la conversion à ce jour échouera depuis « Sat » et « octobre » ne peut pas si la région du téléphone est pas anglophone, signifie la même chose dans une autre langue. Vous pouvez forcer une locale sur la dateFormatter pour éviter cela.
Les caractères à utiliser dans la mise en forme de la date peuvent être trouvés here.
question en double http://stackoverflow.com/questions/741830/getting-the-time-elapsed-objective-c –