Validar Datas

6 respostas
Frank

Estou criando uma função public boolean para validar datas. Nela eu valido se a data esta em branco, se contém a quantidade de caracteres corretos …
O meu problema é o seguinte: quero validar para saber se o usuário digitou 2 digitos no mês e 4 digitos no ano, como eu poderia validar isso ?

Estava fazendo o seguinte: pegava a data que estava no jTextField e passava para uma String, depois eu lia da barra “/” até a outra barra “/” para o mês só que esta dando errado.

Estou no aguardo e deste já obrigado,

6 Respostas

R

parece q vc estah no caminho certo, Frank…

q erro acontece??

Frank

Não aconteceu nenhum erro, funcionou. É que mesmo que eu informe 1 digito ou dois ele entra na mensagem, só deveria entrar se não tivesse nenhum digito no mês ou se tivesse mais que 2 digitos.

Este é o tratamento:

Será que você tem uma solução ?

R

Frank…

tenho alguams funcoes q podem te ajudar…

essa verifica o ano bissexto…

public static boolean bissexto(int intAno) 
	{
		if ((intAno % 4 == 0 && intAno % 100 != 0) || (intAno % 400 == 0))
		  return true;
		else
		  return false;
	}

essa valida a data…

public boolean validaData(int intDia, int intMes, int intAno)
	{
		if ((intDia == 31) && (intMes == 4 || intMes == 6 || intMes == 9 || intMes == 11))
			return false;
		if (intDia == 29 && intMes == 2 && !bissexto(intAno))
			return false;
		return true;
	}

essa valida os meses e ano…

public boolean validaMesAno(int intMes, int intAno)
	{
		if (intMes < 1 || intMes > 12)
			return false;
		if (intAno < 0 || intAno > 9999 )
			return false;
		return true;
	}

ai vc pode adaptar elas como quiser…

espero ter ajudado…falow

Frank

Muito obrigado Rafael !
Você quebrou um galhão. Nem precisarei ir atrás do componente JDateTextField, mas se eu conseguí-lo ficará melhor ainda.

Valeu,

R

pois eh…te mandei o componente na outra msg…

na verdade, essas funcoes nem precisava usar…pois elas jah estao no componente…

falha minha… :oops: :oops: :oops:

falow

Frank

Q isso, muito obrigado …

Criado 27 de março de 2003
Ultima resposta 27 de mar. de 2003
Respostas 6
Participantes 2