Problemas com Datas!

5 respostas
D

Olá pessoal estou com porblemas com datas, estou fazendo desta forma mas não esta dando certo…

try

{

MaskFormatter format = new MaskFormatter("##/##/####");
JFormattedTextField TDtNascto = new JFormattedTextField(format);
TDtNascto.setBounds(110,80,80,20);
this.getContentPane().add(TDtNascto);
}

catch(Exception ex)

{

JOptionPane.showMessageDialog(null,ERROR - DATA);

}

O problema é que insere de forma alguma no banco

se alguém puder me ahudar agradeço

5 Respostas

cv1

Pelo exemplo de codigo nao da pra saber o que esta acontecendo de errado… Qual a exception lancada?

D

Então pessoal já arrumei o problema de incluir no banco… realmente eu estava fazendo errado pois meu banco aceita data como Mês/dia/ano e estava mandano dia/mes/ano…
Agora outro prolema, quando digito uma data inválida não dá pra cadastrar no banco dá erro, como faço pra fazer um teste na data e verificar se ela é válida ou não antes deu mandar pro banco…tem algum comando que faça isto ou tenho que fazer na mão…
Obrigado.

cancao

Usando java.util.Calendar dá pra validar de uma maneira meio… uh… deixa pra lá. Use o metodo setLenient para indicar que não deve ser usada heuristica alguma no tratamento da data. É mais ou menos assim:

public boolean dataValida(int dia, int mes, int ano) {
	try {
		Calendar c = Calendar.getInstance();
		c.setLenient(false);
		c.set(ano,mes,dia);
		c.getTime();
		return true;
	} catch(IllegalArgumentException ex) {
		return false;
	}
}

PS.: eu achava que na linha “c.set(ano,mes,dia);” já deveria ser lançada a Exception mas, isso não acontece. Só quando vc vai recuperar a data é que ele verifica. Parece-me ser meio falho isso.

Até.

D

Beleza vou fazer e ver se dá certo…
Muito obrigado…
até…

A

O seu BD aceita data neste formato “dd/mm/yyyy”??

Criado 6 de outubro de 2003
Ultima resposta 6 de out. de 2003
Respostas 5
Participantes 4