[RESOLVIDO]Erro Date Java?

19 respostas
programaçãojava
felipe1234

Ao pegar a Date do textField que o usuário vai digitar ele da erro:

Imconpatible types String cann not be converted

em Date poderiam me ajudar?

Código:

re.setRe_dtvenc(txtdatavenc.getText());

19 Respostas

Dragoon

o que é re.setRe_dtvenc qual é o parâmetro que ele exige?

felipe1234

Ele exige um parametro do tipo Date

Jonathan_Medeiros

Faz a conversão!

String dataEmString = //aqui você atribui a data do seu jTextField;
Date data;
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
data = (Date) formatter.parse(dataEmString);
re.setRe_dtvenc.(data);
Dragoon

Então, Felipe, se ele exige um campo do tipo Date, você precisa converter o valor do TextField que sempre é Text (getText()) para Date

string data = txtdatavenc.getText();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");    
java.util.Date _d = sdf.parse(data); // tem que verificar se é esse tipo do Date
lvbarbosa

Recomendo utilizar a API de tempo nova do Java 8, ficou bem melhor e mais fácil de utilizar.

Acredito que o Felipe esteja começando a programar agora, é uma ótima oportunidade para nem aprender a lidar com a API velha hehe

A parte da conversão de String pra LocalDate é bem parecida e precisa passar por um formatador da mesma forma, mas a utilização da data em si ficou bem intessante :smile:

Dragoon

Concordo com você, mas, precisa saber se está usando JAVA 8 ou não! Agora que é bom ele saber das API antigas é bom, muitas vezes damos manutenção em coisa antiga! é só uma recomendação.

Dê um exemplo então no JAVA 8 @Ivbarbosa

lvbarbosa
final String sDate = "19/10/1993";
LocalDate date = LocalDate.parse(sDate, DateTimeFormatter.ofPattern("dd/MM/yyyy"));
Dragoon

Outro exemplo!

felipe1234

Quando insiro a linha

java.util.Date _d = sdf.parse(data);

ele mostra o seguinte erro

cannot find symbol symbol class util

lvbarbosa

Importou as classes necessárias?

felipe1234

sim

Dragoon

Poste uma imagem da onde está o erro!

felipe1234

felipe1234

Meus pacotes

Dragoon

ali aonde está java.util.Date tem que ter um espaço ? parece grudado!

java.util.Date   _d = sdf.parse(data);

Observe isso?

felipe1234

tenque ter espaço ? no caso ali ta junto rs

felipe1234

Dragoon, consegui converter o erro era pois tava junto no Data_d, agora como faço pra passar como parametro no re.setRe_data(); ?

Dragoon
java.util.Date   _d = sdf.parse(data);
re.setRe_dtvenc(_d);
felipe1234

Deu certo Dragoon obrigado cara me ajudou bastante

Criado 6 de fevereiro de 2017
Ultima resposta 6 de fev. de 2017
Respostas 19
Participantes 4