Acredito que varias pessoas já tiveram problemas com o objeto Date, ou ajustar uma String de data com formato americano por exemplo.
O SimpleDateFormat é uma Classe bem simples de ser utilizada e totalmente útil para esse assunto. Com o SimpleDateFormat você pode definir seus próprios padrões de data, por exemplo, dd/mm/aaaa, dd/mm/aaaa, aaaa-mm-dd, e assim por diante. Os padrões de letras são definidas na imagem abaixo (todos os outros caracteres de ‘A’ a ‘Z’ e de ‘a’ a ‘z’ são reservados):
Abaixo vamos mostrar um exemplo bem simples da utilização dessa Classe.
Nele criamos um padrão Mês/Dia/Ano (de acordo com a tabela acima) e construímos o SimpleDateFormat(sdf) com esse padrão.Após isso criamos um Date através do sdf passando a data como uma String de acordo com o padrão. Na linha 16 formatamos um novo Objeto Date que tem a data atual. depois alteramos o padrão para Dia/Mês/Ano Hora:Minuto:Segundo e pegamos a String através de um new Date.
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class MainClass { public static void main(String[] args) { String padrao = "MM/dd/yyyy"; SimpleDateFormat sdf = new SimpleDateFormat(padrao); try { Date date = sdf.parse("12/30/2012"); System.out.println(date); } catch (ParseException e) { e.printStackTrace(); } // formatando "MM/dd/yyyy" System.out.println(sdf.format(new Date())); // formatando "dd/MM/yyyy kk:mm:ss" padrao = "dd/MM/yyyy kk:mm:ss"; sdf = new SimpleDateFormat(padrao); System.out.println(sdf.format(new Date())); } }
A baixo seria a Saida:
Sun Dec 30 00:00:00 PST 2012 12/30/2012 30/12/2012 08:10:35
Belo post, espero que em breve tenha um para a classe Calendar.
Valeu Brother pode deixar que irei providenciar um post sobre Calandar
Por exemplo, estou com uma dúvida em um projeto que estou fazendo, e até agora não resolvi. Eu passo uma data da classe Calendar, da seguinte forma: values.put(“dataInicio”, DateFormat.format(“yyyy-MM-dd”, dataInicio).toString());
Se eu quero recuperar através de um método values. Eu não vou ter nenhum tipo de data nem calendar… Estou pensando sinceramente em fazer um sdf pra isso. Se cuida ai e abraço.
É dessa maneira você está adicionando uma String em sua lista, você pode usar o sdf para recuperar um Date já que você tem a mascara, ou já adicionar um Date na sua lista em vez de uma String…
Não dá pra adicionar Date desta forma… no values.put() não tem nenhum tipo de data, apenas integer, string, boolean e por ai vai. Mas Date não tem nenhuma opção.
Que tipo é esse “values”? pensei que fosse um hashmap