Socorro! Converter para o tipo "Date" uma data digitada num JFormattedField!

4 respostas
Linkel

Aí, galera!
Me ajudem!
Preciso pegar uma data digitada num JFormattedTextField e convertê-la para o tipo “Date” e então jogar essa data para o BD em Firebird…

Valeu!

4 Respostas

P

http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html

utilize o metodo parse

P

Dae cara, blz??

tenta assim:

Date data = new SimpleDateFormat(“dd/MM/yyyy”).parse(JFormattedTextFild.getText());

aí é só inserir no BD normalmente a variável data.

vlw?!! espero ter ajudado

[]s

Linkel

pablodiego:
Dae cara, blz??

tenta assim:

Date data = new SimpleDateFormat(“dd/MM/yyyy”).parse(JFormattedTextFild.getText());

aí é só inserir no BD normalmente a variável data.

vlw?!! espero ter ajudado

[]s

Aí, brother…
Eu fiz o que você indicou, daí executei e digitei a data 27/09/1986 e deu o seguinte erro:
[color=red]org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544334. conversion error from string “Sat Sep 27 00:00:00 BRT 1986”[/color]
Parece que está formatando a data para esse modelo aí…

No JFormattedTextField eu criei uma mascara para padronizar a entrada assim: 00/00/0000

Será que não tem uma forma de eu jogar para o banco sem ter que formatar?

Coloquei a string pura no insert sem converter para o tipo data mas não funciona sempre Não entendo porque que as vezes aceita e insere o registro e outras vezes não

 uma olhada no fragmento do que estou fazendo

[color=darkblue]try {

Date dataNasc = new SimpleDateFormat(dd/MM/yyyy).parse(editDataNasc.getText());

} catch (ParseException ex) {

ex.printStackTrace();

}[/color]

Se puder, me ajuda!
Valeu!

Linkel

Heheheheh

Descobri!!!

No jdbc Jaybird (firebird) as datas devem ser inseridas assim “yyyy/MM/dd”, com o ano ao contrário e na forma string…
Daí converti a entrada em data, assim:
Date dataNasc = new SimpleDateFormat(“dd/MM/yyyy”).parse(editDataNasc.getText()

e depois formatei a data jogando para uma string, assim:

String dataNascStr = new SimpleDateFormat(“yyyy/MM/dd”).format(dataNasc);


E funcionou perfeitamente! Pelo menos, até agora, rsrsr…

Valeu, galera, pela força!
);

Criado 18 de agosto de 2007
Ultima resposta 18 de ago. de 2007
Respostas 4
Participantes 3