Cómo incrementar el tiempo en 1 hora

Tengo dos valores de tiempo. uno para la hora de inicio de sesión anterior y otro para la hora de inicio de sesión actual. Tengo que aumentar el tiempo de inicio de sesión anterior en una hora. He usado el formato de fecha hh: mm: ss. Este es mi fragmento de código.

Date previous_time, current_time;

  if(previous_time.before(current_time)){
  Log.i("Time Comparision"," true");
 }

así que en lugar de la condición if mencionada anteriormente, tengo que agregar una hora a previous_time y hacer la condición if. ¿Cómo lograrlo?

preguntado el 10 de mayo de 11 a las 13:05

3 Respuestas

   Calendar calendar = Calendar.getInstance();
   calendar.setTime(previous_time);
   calendar.add(Calendar.HOUR, 1);
   previous_time = calendar.getTime();
   // do your comparison

contestado el 10 de mayo de 11 a las 17:05

Siento decir mi amigo. Este código actualiza la hora, pero cambia totalmente el formato de mi fecha. Solo quiero tiempo en el formato "hh: mm: ss". - Andro Selva

@Andro_Selva - El formateo y la manipulación real de la fecha son dos tareas independientes. Mirar Formato de fecha y/o SimpleDateFormat. - Rob Hruska

Luego, puede usar SimpleDateFormat para obtener el formato deseado. En su caso, "new SimpleDateFormat (" hh: mm: ss "). Format (previous_time)", después de la última línea de planetjones. - Dunni

Sí, de acuerdo con @Rob Hruska (+1) - como dice JavaDoc "La clase Date representa un instante específico en el tiempo, con precisión de milisegundos" - formatearlo es diferente a realizar operaciones como comparaciones en él. - planetjones

@Andro_Selva, ¿quieres publicar más código o explicar tu problema exactamente? No puedo inferir cuál es tu problema cuando dices "no trajo ninguna diferencia". planetjones

previous_time.setTime(previous_time.getTime() + 60 * 60 * 1000);

or

Date session_expiry = new Date(previous_time.getTime() + 60 * 60 * 1000);

http://download.oracle.com/javase/6/docs/api/java/util/Date.html#getTime%28%29

contestado el 10 de mayo de 11 a las 17:05

Intente este código.

    SimpleDateFormat sdf = new SimpleDateFormat("h:mm a");
    Date date = Utils.getBookingDate(mBooking.ToTime);
    Calendar calendarAdd = Calendar.getInstance();
    calendarAdd.setTime(date);
    calendarAdd.add(Calendar.HOUR, 1);
    toTime = sdf.format(calendarAdd.getTime());
    tv_Totime.setText(toTime);

cuando la cadena de tiempo actual formatea dentro de agregar 1 hora

Respondido 02 Oct 15, 09:10

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.