Ir ao conteúdo
  • Cadastre-se
Ferreira27

Data em Java

Recommended Posts

Gostaria de ajuda como trabalhar com data nesse código para que a data sai no formato xx/xx/xxxx

como criar o objeto do tipo data

segue parte do código

classe Maim 

aux.setDataFabricacao(JOptionPane.showInputDialog("Informe a data de fabricação"));
aux.setDataVencimento(JOptionPane.showInputDialog("Informe a data vencimento"));


Produto aux = new Produto();

aux.setNome(JOptionPane.showInputDialog("Informe o nome do produto"));
aux.setCodigo(Integer.parseInt(JOptionPane.showInputDialog("Informe o codigo do produto")));
aux.setFabricante(JOptionPane.showInputDialog("Informe o fabricante do produto"));
aux.setDataFabricacao(JOptionPane.showInputDialog("Informe a data de fabricação"));
aux.setDataVencimento(JOptionPane.showInputDialog("Informe a data vencimento"));



arrayProduto.add(aux);

resultado = "";

for (int i = 0; i < arrayProduto.size(); i++) {
resultado += "Nome: " + arrayProduto.get(i).getNome() + "\n";
resultado += "Codigo: " + arrayProduto.get(i).getCodigo() + "\n";
resultado += "Fabricante: " + arrayProduto.get(i).getFabricante() + "\n";
resultado += "DataFabricacao: " + arrayProduto.get(i).getDataFabricacao() + "\n";
resultado += "DataVencimento: " + arrayProduto.get(i).getDataVencimento() + "\n";



JOptionPane.showMessageDialog(null,

resultado);


classe dominio

public class Produto {
private int codigo;
private String nome;
private String fabricante;
private String dataFabricacao;
private String dataVencimento;

public int getCodigo() {
return codigo;
}

public void setCodigo(int codigo) {
this.codigo = codigo;
}

public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}

public String getFabricante() {
return fabricante;
}

public void setFabricante(String fabricante) {
this.fabricante = fabricante;
}

public String getDataFabricacao() {
return dataFabricacao;
}

public void setDataFabricacao(String dataFabicacao) {
this.dataFabricacao = dataFabicacao;
}

public String getDataVencimento() {
return dataVencimento;
}

public void setDataVencimento(String dataVencimento) {
this.dataVencimento = dataVencimento;
}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

E ai, tranquilo?

Você pode inserir o seguinte código:

		String dataDigitada = JOptionPane.showInputDialog("Informe a data de fabricação");

String [] data = dataDigitada.split("/");

// Tem que ter valores
if(data.length == 3)
{
GregorianCalendar calendar = new GregorianCalendar();
calendar.set(Calendar.DAY_OF_MONTH, Integer.parseInt(data[0]));
calendar.set(Calendar.MONTH, Integer.parseInt(data[1]) - 1); // Meses no calendar começam do 0...
calendar.set(Calendar.YEAR, Integer.parseInt(data[2]));

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
aux.setDataFabricacao(sdf.format(calendar.getTime()));

}

Como você pode ver, fica um pouco trabalhoso dessa forma... mas eu prefiro utilizar o Calendar que é um componente justamente para trabalhar com datas.

Uma sugestão é você utilizar o java.util.Date ao invés da String para datas, porque ele armazena a data e a hora e você poderá utilizar do SimpleDateFormat para formatar esse objeto da forma que você preferir, no código acima ele está representado no trecho calendar.getTime()

Abrçs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×