Validação de Hora - RESOLVIDO

3 respostas
hjmarcon

Como faço pra validar a hora que o usuário informou ?
Para prevenir que o usuario digite 25:00:00 p. ex.

3 Respostas

Bravox

Uma possibilidade pode ser está ai abaixo , só que o resto dos if(s) fica por sua conta

public class ValidaHora {

	public static void main(String[] args) {
		
		String hora = "25:00:00";
		
		// separa a hora o minuto e segundo em um array
		String[] hms = hora.split(":"); 
		
		int horas = Integer.parseInt( hms[0]);
		int minutos = Integer.parseInt( hms[1]);
		int segundos = Integer.parseInt( hms[2]);
		
		if( horas > 24 ){
	
			System.out.println( " Hora Invalida ");
		}
	}
}

bravox

_fs

Um jeito mais apropriado:

SimpleDateFormat sdf  = new SimpleDateFormat( "HH:mm:ss" );

// com set lenient a data não se adapta a numeros
// muito grandes. Se não setado, por exemplo ao
// inserir 25h a data ficaria como 1h da manhã
// do dia seguinte.
sdf.setLenient( false );
try
{
	Date d = sdf.parse( "25:00:00" );
}
catch( ParseException e )
{
	e.printStackTrace();
}
hjmarcon
LIPE:
Um jeito mais apropriado:
SimpleDateFormat sdf  = new SimpleDateFormat( "HH:mm:ss" );

// com set lenient a data não se adapta a numeros
// muito grandes. Se não setado, por exemplo ao
// inserir 25h a data ficaria como 1h da manhã
// do dia seguinte.
sdf.setLenient( false );
try
{
	Date d = sdf.parse( "25:00:00" );
}
catch( ParseException e )
{
	e.printStackTrace();
}

Muito obrigado.
Resolveu meu problema.

Criado 11 de outubro de 2006
Ultima resposta 11 de out. de 2006
Respostas 3
Participantes 3