Calendar para SimpleDateFormat

7 respostas
M

Boa tarde,

Pessoal, estou com uma dúvida em relação ao um parse.
Há como fazer direto uma conversão de Caledar para SimpleDateFormat.
A lógica seria fazer a exibição de um SimpleDateFormat, pegando o conteúdo de um objeto Calendar.

Obrigado
At.

7 Respostas

D

Não.
Não há um método do SimpleDateFormat que faça formatação, recebendo como argumento um objeto Calendar.

M

drsmachado,

Obrigado cara.
Uma outra pergunta se não fugir muito do assunto, e para discutir meios.

Como poderia mostar uma data no formato dd/mm/yyyy, do meu objeto Calendar?

Faço uma conversão em String através de DAY_OF_MONTH, MONTH, YEAR?

T

Você quer formatar o conteúdo do Calendar utilizando SimpleDateFormat?
Utilize o getTime() que retorna um objeto Date.

Calendar calendar = new GregorianCalendar();
SimpleDateFormat dateFormat = new SimpleDateFormat();
dateFormat.format(calendar.getTime());
J

Assim:

Calendar c = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
String s = sdf.format(c.getTime());

FONTE: http://download.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html

M

Certo, agora se eu precisar retornar somente valores Date para o banco e fazer operações em Date em JAVA.

Transformando tudo isso em string não seria uma “gambiarra”?

T

Seria sim. A formatação em String é pra você exibir a data para o usuário.
Pro banco, se for com JDBC acho que basta utilizar java.sql.Date.
Para fazer operações no Java você deve utilizar a classe Calendar mesmo.

Lembrando que você também pode representar uma Data através de um long. O método getTime() da classe Date retorna os milisegundos da data em um long. Assim como o getTimeInMillis() da classe Calendar.

M

Pra exibir pro usuário então seria melhor fazer um metódo toString?

Criado 20 de julho de 2011
Ultima resposta 20 de jul. de 2011
Respostas 7
Participantes 4