miércoles, 12 de agosto de 2015

Android: Manejo fechas

La idea es hacer un código que permita verificar si la fecha actual se encuentra dentro del rango de las 10:00 horas y las 14:00 horas. En tal caso se activaría una bandera para hacer algo.
Es solamente un fragmento de código, el cual se puede copiar y pegar dentro de cualquier función.
Para prueba, podría crearse una actividad e insertarlo en el método onCreate.
Los mensajes se podrán seguir en la consola de logs.

    //--------------------Manejo de horas----------------------------------------

    DateFormat dateFormat = new SimpleDateFormat ("HH:MM");
    String horaInicio = "10:00";
    String horaFinal = "14:00";

    Calendar c1 = Calendar.getInstance();

    int horaActual, minutosActual;
    horaActual =c1.get(Calendar.HOUR_OF_DAY);
    minutosActual = c1.get(Calendar.MINUTE);
    String horaActual2 = horaActual+":"+minutosActual;

    Date compararInicio=null, compararFinal=null, compararActual=null;

    try {
        compararInicio = dateFormat.parse(horaInicio); //HoraInicial
        compararFinal = dateFormat.parse(horaFinal); //Horafinal

        compararActual = dateFormat.parse(horaActual2); //Hora actual
 //       compararActual = dateFormat.parse("12:00"); //Para pruebas se puede asiganr un valor especifico

    } catch (Exception ex) {
        ex.printStackTrace();
    }
    Log.i("PRUEBA---<","Resultado "+compararInicio.compareTo(compararActual)+" "+compararFinal.compareTo(compararActual));
      if ((compararInicio.compareTo(compararActual) < 0) && (compararFinal.compareTo(compararActual) > 0)){
          Log.i("PRUEBA---<","Dentro del rango");
          Log.i("PRUEBA---<","Actual "+compararActual.toString()+"- > -"+compararInicio.toString()+" "+compararFinal.compareTo(compararActual));
          banderaHorarioCentral=1;
    }else{
          Log.i("PRUEBA---<","No cumple");
          Log.i("PRUEBA---<","Actual "+compararActual.toString()+"- > -"+compararInicio.toString()+" "+compararFinal.compareTo(compararActual));
          banderaHorarioCentral=0;
    }//

    //------------------------------------------------------------

No hay comentarios:

Publicar un comentario