Converter Data para String
Pessoal,
Sei que este assunto já foi discutido em vários outros tópicos, mas mesmo lendo todos eles não consegui resolver o meu problema.
Quando eu faço a leitura de um campo de data do banco de dados ele retorna no formato "yyyy-mm-dd".
Já tentei utilizar o SimpleDateFormat, também tentei o método "parse" desta classe, mas não obtive sucesso.
Se tento utilizar o "parse" dá mensagem que o conteúdo não é "parseável".
Eu utilizei o "toString" e ele até consegue jogar a data para a String, mas fica no formato que coloquei acima, e eu quero que fique como "dd/mm/yyyy"...
Alguém tem um exemplo de como posso fazer esta conversão mais facilmente?

Andvenancio
Curtidas 0
Respostas

Matheus Trevizan
09/04/2009
Você retorna o campo de data como se fosse String ou Date?
Como é a recuperação dos dados que você efetua?
GOSTEI 0

Andvenancio
09/04/2009
Na "versão atual" está assim:
Recuperação dos dados:
O método "regUsuario.getdata()" busca a data diretamente do banco de dados. O valor retornado é "2006-12-31", ou seja, no formato "yyyy-mm-dd".
O método "converteData" está definido assim:
Quando ele vai tentar fazer o "parse" dá erro....
Alguma sugestão ???
ftData.setText(converteData(regUsuario.getdata());
protected String converteData(java.util.Date dtData){ SimpleDateFormat formatBra; formatBra = new SimpleDateFormat("dd/MM/yyyy"); try { java.util.Date newData = formatBra.parse(dtData.toString()); return (formatBra.format(newData)); } catch (ParseException Ex) { return "Erro na conversão da data"; } }
GOSTEI 0

Ronie Uliana
09/04/2009
Digamos que a variável "date" é sua data, isso aqui deve funcionar (não testei):
Talvez desse pra colocar isso em um método pra fazer um utilitário do tipo: "converta do formato x para o y" ;)
SimpleDateFormat in= new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat out = new SimpleDateFormat("dd/MM/yyyy"); String result = out.format(in.parse(date.toString()));
GOSTEI 0

Andvenancio
09/04/2009
Beleza!
Funcionou do jeito que eu esperava!
Muito obrigado!
GOSTEI 0

Andvenancio
09/04/2009
Só mais uma coisa....
Na hora de buscar a data do banco de dados e converter para String deu certo ...
Mas agora preciso setar uma String com a data atual ... Quando tento fazer isto dá erro no "parse", pois a data retornada pelo java.util.Date() é "Fri Jan 12 15:49:33 BRST 2007", e difere do formato que está sendo recebido ("in")...
Como resolver?
GOSTEI 0

Dalton
09/04/2009
Tchê, pensa um pouco :P
Veja o exemplo do rmuliana (que por sinal anda sumido do JF)
SimpleDateFormat out = new SimpleDateFormat("dd/MM/yyyy"); String result = out.format(new Date());
GOSTEI 0