tiene que paises pais mexico husos horas horarios horaria españa entre ejemplos diferencia conversor con como calcular argentina cocoa time nsdate nstimeinterval

cocoa - que - diferencia horaria wikipedia



Calcular la diferencia horaria en Cacao (4)

Tengo dos valores de tiempo en el formato:% H% M% S (EG161500)

Estos valores son enteros basados ​​en texto.

¿Hay una función simple en Cocoa que calcula la diferencia entre estos dos enteros usando una escala de 60 segundos y minutos?

Así que si

time 1 = 161500 time 2 = 171500 timedifference = 003000


Crearía una subclase NSFormatter para analizar los valores de tiempo en ese formato de los datos de entrada (puede poner uno en un campo de texto para convertir automáticamente la entrada del usuario, o usarlo para analizar desde una fuente de datos en el código). Haga que devuelva el número combinado de segundos como NSTimeInterval (el doble representa segundos) envuelto en un NSNumber. A partir de ahí, es fácil restar la diferencia y mostrarla utilizando la misma clase NSFormatter que ha creado. Tanto en el análisis como en la visualización de valores, usted es el responsable de escribir la conversión de código de segundos a horas: minutos: segundos o el formato que desee. También puede convertir estos valores a un NSDate como mencionó mouviciel, si tiene sentido para su aplicación. Solo tenga en cuenta que siempre va a almacenar la diferencia horaria de una fecha de referencia, generalmente el 1 de enero de 1970 (NSDate tiene métodos para hacer esto por usted).


La clase para manipular fechas es NSDate . El método para obtener intervalos de tiempo es -timeIntervalSinceDate: El resultado es un valor NSTimeInterval , que es un double representa el intervalo en segundos.

Puede crear un objeto NSDate desde un NSString con +dateWithString: siempre que su fecha esté formateada como 2001-03-24 10:45:32 +0600 .


NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setDateFormat:@"HHmmss"]; NSDate *date1 = [dateFormatter dateFromString:@"161500"]; NSDate *date2 = [dateFormatter dateFromString:@"171500"]; NSTimeInterval diff = [date2 timeIntervalSinceDate:date1]; // diff = 3600.0


prueba este código

- (NSTimeInterval)intervalBetweenDate:(NSDate *)dt1 andDate:(NSDate *)dt2 { NSTimeInterval interval = [dt2 timeIntervalSinceDate:dt1]; NSLog(@"%f",interval); return interval;

}