Pergunta

Eu tenho 2 matrizes com valores de tempo nele. Eles estão no seguinte formato. mm: ss: centenas de um segundo. Eu quero começar a diferença entre os dois [lastObjects] nas matrizes. NSDate não está funcionando porque o último valor está em hundredsth de um segundo.

Uma questão. Se a segunda data for maior do que o primeiro será que vai me dar um número negativo como -01: 10: 00

Foi útil?

Solução

Seu problema tem duas partes, analisar o tempo e ficando a diferença:

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];

Outras dicas

NSDate deve trabalhar para você, use timeIntervalSinceDate: , que retorna um intervalo de tempo que tem uma precisão de milissegundos

.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top