Validar Data de Nascimento Java

14 respostas
netbeansjava
G

Olá, estou fazendo a validação de senha de um campo de texto, já comecei o código e queria ajuda para terminar ele.

public class DateValidator {

   public boolean isValid(String data) {
      try {
            String dataTexto = new String(edData.getText());
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
         LocalDate d = LocalDate.parse(data, formatter);  
         
         return true;
      } catch (DateTimeParseException e) {
        return false;
      }   
   }
}

private void edDataFocusLost(java.awt.event.FocusEvent evt) {

isValid();

}

14 Respostas

L

Você quer validar uma data ou uma senha?

G

Data de Nascimento

L

Seu código parece certo. Qual o problema que está realmente acontecendo?

F

Eu faço da seguinte forma para validar um refresh token:

public void validate(String tokenApp) throws IOException {
    TokenEntity entity = tokenRepository.findByTokenApp(tokenApp);
    if (entity == null)
        throw new HttpClientErrorException(HttpStatus.UNAUTHORIZED, "Unauthorized");
    else {
        LocalDateTime dataAtual = LocalDateTime.now();
        if (!entity.getExpires().isAfter(dataAtual)) {
            requestNewRefreshToken(entity.getTokenRefresh(), tokenApp);
        }
    }
}

Dá pra você aplicar o conceito modificando para o seu caso.

[]'s

G

Tipo qualquer data dá certo, o validador não está funcionando

L

@FearX, ele colocou errado na mensagem do post. Na verdade ele quer validar uma data mesmo (como está no título).

G

Amigo, Apareceu esses erros no código kkk

L

Reparei agora que o método isValid recebe uma string, e dentro dele, utiliza a string fornecida por edData.

Mude a implementação do método para utilizar o parâmetro data, assim:

public static boolean isValid(String data) {
	try {
		DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
		LocalDate.parse(data, formatter);
		return true;
	} catch (DateTimeParseException e) {
		return false;
	}
}
G

Lucas, quando deixei static deu erro no código e não consegui resolver…

F

É claro que apareceu. Copiar e colar código não vai fazer milagre. Esse código é meu e funciona no MEU código. Te mostrei ele como exemplo pra criar o seu próprio.

L

Tira o static do método.

G

Eai, eu tirei o static e continua no mesmo, não faz a verificação.

J

Resolveu? Se sim, como?

I

Quando você diz:

Significa que se tu informar, por exemplo, 99/99/9999 o método valida. É isso?

Criado 1 de agosto de 2019
Ultima resposta 12 de mai. de 2020
Respostas 14
Participantes 5