AM_PM Calendar - Como obter?[RESOLVIDO]

7 respostas
Thiago_de_Paula_Bese

Bom dia :smiley:

Estou utilizando o Calendar do java para montar a data e horario em um arquivo de log.

Exemplo:

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
System.out.println(sdf.format(Calendar.getInstance().getTime())

Do jeito que esta esse código, a data não vem formatada com horarios PM. Exemplo: 14:00 hrs vem como 02:00 :frowning:

Como faço para alterar isso na classe Calendar? :shock:

Agradeço desde já! :stuck_out_tongue:

7 Respostas

Thiago_de_Paula_Bese

Pessoal, tentei alterar o código, porém não obtive sucesso =/

Segue:

System.out.println(sdf.format(Calendar.getInstance().getTime()) + " " + Calendar.getInstance().AM_PM

Entretranto, está sendo retornado isso:

01/03/2013 11:32:30 9

:?:

Thiago_de_Paula_Bese

[RESOLVIDO]

Demorei pra testar assim?! :shock:

Calendar c = GregorianCalendar.getInstance();
System.out.println(c.getTime()); 

//Saida
Mon Mar 04 15:57:51 BRT 2013

Que coisa não?! rs

Obrigado! :smiley:

B

Duas coisas:

  1. Leia http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

  2. Mude de

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");

Para

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");

H maiúsculo.

Thiago_de_Paula_Bese

Bruno Laturner:
Duas coisas:

  1. Leia http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html

  2. Mude de

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");

Para

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");

H maiúsculo.

A solução é esta mesmo!

Ignorem o meu RESOLVIDO e considerem o RESOLVIDO através da ajuda do Bruno Laturner. Na verdade não tinha testado ainda com o SimpleDateFormat por isso conclui que tava resolvido. Desculpas à comunidade. Resolução falsa não pow…hehe

Obrigado! :smiley:

Thiago_de_Paula_Bese

Nada haver também sobre GregorianCalendar. Com Calendar também daria certo, basta mudar hh por HH. Acabei complicando o post sem querer… :shock:

Valeu!!

B

A questão é você saber separar a estrutura de dados da apresentação dele para o usuário.

Por exemplo, se eu escrever ABC

em hexadecimal ficaria {0x41, 0x42, 0x43},
em decimal {65, 66, 67},
em octal {0101, 0102, 0103),
em binário {0b01000001, 0b01000010, 0b01000011},
numa tripla de cores RGB seria um cinza escuro, perto da zona azul escura de cores,
num número inteiro de 24 bits, complemento de dois, seria 4276803 base 10,
24 bits em base 64 seria QUJD…

Assim da mesma forma, hoje é dia 4 de março de 2013, e a esta hora já é dia 5 no Japão, mas ambos são a mesma hora dentro do unix time [telefone removido] UTC (GMT).

Hoje também é dia 5573 Adar 22 no calendário Hebreu, 1434 Rabi`ath-Thani 21 no Islâmico, dia 41337 no Excel serial date, mas todos continuam sendo hoje.

Todos internamente são o mesmo tipo de dado, com o mesmo binário, mas são formatados diferentemente dependendo de quem pergunta. Então basta alterar a formatação, e não o dado.

Thiago_de_Paula_Bese

Valeu pela dica Bruno. Fico muito bem explicado! :smiley:

Criado 1 de março de 2013
Ultima resposta 4 de mar. de 2013
Respostas 7
Participantes 2