1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Dúvidas com validação de horários?

Estou com as seguintes dúvidas:

  • 1 - A maneira que usei para validar horário é a mais rápida e eficiente?
  • 2 - Por que o setLenient(Boolean) não está lançando erros para horários do tipo 170:500?
public boolean validaExpediente(String tempo){    
    try {
        Locale br = new Locale("pt","BR"); // local: Brasil
        DateFormat df = SimpleDateFormat.getTimeInstance(DateFormat.SHORT,br); // formato: Pequeno, reconhecido no local
        Calendar t = Calendar.getInstance(); 
        t.setTime(df.parse(tempo)); // configura a data transformando string, dada no parâmetro, em um objeto Date
        t.setLenient(false); // <---------- Dúvida
        System.out.println(df.format(t.getTime()));
        return true;
    } catch (Exception e) {
        System.out.println(e.getMessage());
        return false;
    }
}
  • Bom, resolvi um dos problemas: aparentemente, a classe formatadora deve impor a leniência, ou seja, devo usar df.setLenient(false), ao invés de t.setLenient(false).

    bazum   20 de dez de 2014
  • então responda a sua duvida e marque como resposta correta para finalizar este topico

    peczenyj   21 de dez de 2014
  • eu ainda preciso saber se essa é a melhor forma para lidar com horários. Só consegui responder uma das perguntas.

    bazum   21 de dez de 2014
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java exception ou faça a sua própria pergunta.