Java – Usando o SimpleDateFormat

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):

Tabela SimpleDateFormat

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

Help DEV – Analista desenvolvedor Java / Android
https://helpdev.com.br/zarelli

Java – Usando o SimpleDateFormat

6 pensou em “Java – Usando o SimpleDateFormat

  1. 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.

    1. É 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…

  2. 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.

Deixe uma resposta para Guilherme Biff Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Rolar para o topo