Tratamento de Datas

8 respostas
BtAquino

Porque este código não compila?

System.out.println("\nData do Cadastro: "); SimpleDateFormat format = new SimpleDateFormat("yy/MM/dddd"); String data = entrada.nextLine(); novoFunc.setDataEntrada(format.parse(data));

A mina variável dataEntrada é do tipo Date, converti a String data…

Mas mesmo assim não compila.

Alguém pode mostrar onde está o erro e como corrigir?

Obrigado!

8 Respostas

dtxk

acho que esta errado essa linha:

SimpleDateFormat format = new SimpleDateFormat("yy/MM/dddd");

o correto seria

SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
BtAquino

The method setDataEntrada(Date) in the type Funcionario is not applicable for the arguments (Date)

nel

Tem certeza que o seu objeto espera um java.util.Date ? :slight_smile:
De preferência, poste a classe Funcionario e verifique o tipo que ela espera em “dataEntrada”.

mveloso

BtAquino, qual valor a String data assume quando vc roda o entrada.nextline() ??? Já debugou o código para ver esse valor? Se puder informar no post ajuda bastante

Abraços

BtAquino

mveloso

Segundo o Debug, está recebendo um String [], porém é pq eu não chego a informar o valor, já que não compila.

Trecho da classe funcionário:

public class Funcionario {
	

	private Date dataEntrada;

	
	
	public Date getDataEntrada(){
		return this.dataEntrada;
	}
	
	public void setDataEntrada(Date dataEntrada){
		this.dataEntrada = dataEntrada;
	}
nel

A principio, não vejo erros em seu código, ao menos, nada que seja em tempo de compilação.
Não vi o import da sua data, confirme se é java.util.Date na sua classe Funcionario, me parece ser um java.sql.Date.

BtAquino

Puts…

Realmente o problema estava no import, estava importando a classe errada. :?

java.sql.Date serviria para qual caso?

Já aproveitando o tópico, se eu quiser que dataEntrada receba a data do atual do Windows, como ficaria?

Desde já
Obrigado!

nel

BtAquino:
Puts…

Realmente o problema estava no import, estava importando a classe errada. :?

java.sql.Date serviria para qual caso?

Já aproveitando o tópico, se eu quiser que dataEntrada receba a data do atual do Windows, como ficaria?

Desde já
Obrigado!

Data atual é simplesmente new Date() e o java.sql.Date é retornado em uma consulta JDBC, por exemplo.

Criado 29 de fevereiro de 2012
Ultima resposta 29 de fev. de 2012
Respostas 8
Participantes 4