Come ottenere la differenza di orario in iPhone
-
07-07-2019 - |
Domanda
Ho 2 matrici con valori di tempo in esso. Sono nel seguente formato. mm: ss: centinaia di secondi. Voglio ottenere la differenza tra i due [lastObjects] negli array. NSDate non funziona perché l'ultimo valore è espresso in centesimi di secondo.
Una domanda. Se la seconda data è più grande della prima mi darà un numero negativo come -01: 10: 00?
Soluzione
Il tuo problema ha due parti, analizzando il tempo e ottenendo la differenza:
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]];
[dateFormatter setDateFormat:@"mm:ss:SS"];
NSDate* firstDate = [dateFormatter dateFromString:@"01:00:00"];
NSDate* secondDate = [dateFormatter dateFromString:@"01:02:00"];
NSTimeInterval timeDifference = [secondDate timeIntervalSinceDate:firstDate];
Altri suggerimenti
NSDate
dovrebbe funzionare per te, utilizzare timeIntervalSinceDate:
, che restituisce un intervallo di tempo con precisione millisecondo.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow