COnverter JTextField para String

2 respostas
programaçãojava
A
//Conversão JTextField para String

String nome = tNome.getText();

tNome.setText(nome);

String endereco = tEndereco.getText();

tEndereco.setText(endereco);

String email = tEmail.getText();

tEmail.setText(email);

String telefone = tTelefone.getText();

tTelefone.setText(telefone);
FileWriter arq = new FileWriter("c:\\contatos.txt");
    PrintWriter gravarArq = new PrintWriter(arq);
    gravarArq.printf("Nome: ", tNome, "\n");
    gravarArq.printf("Endereço: ", tEndereco, "\n");
    gravarArq.printf("Email: ", tEmail, "\n");
    gravarArq.printf("Telefone: ", tTelefone, "\n");
     arq.close();

Alguém sabe porquê não consigo converter? Quero converter para salvar as informações num aruivo txt.
Print: http://prntscr.com/lhnkg6

2 Respostas

R

wat?
Primeiro, não tem como CONVERTER JTextField para texto, ele é um objeto complexo, não um mero texto, porém ele POSSUI um atributo onde contem o texto digitado nele, este vc acessa através dos métodos setText e getText.

Segundo, pq vc está fazendo String nome = tNome.getText(); e tNome.setText(nome);
Pegando o valor e logo em seguida setando o mesmo valor? n faz sentido algum.

S

Primeiramente, você não converte um JTextField pra String, você obtém o texto dele, que é um objeto do tipo String.

Outra coisa, veja o código abaixo:

String nome = tNome.getText();
tNome.setText(nome); // qual a necessidade dessa linha?
String endereco = tEndereco.getText();
tEndereco.setText(endereco); // qual a necessidade dessa linha?
String email = tEmail.getText();
tEmail.setText(email); // qual a necessidade dessa linha?
String telefone = tTelefone.getText();
tTelefone.setText(telefone); // qual a necessidade dessa linha?

É só fazer assim:

String nome = tNome.getText();
String endereco = tEndereco.getText();
String email = tEmail.getText();
String telefone = tTelefone.getText();

Você está serializando os próprios componentes JTextField no seu arquivo,
Está errado!
Você tem que gravar as variáveis do tipo String: nome, endereco, email e telefone.

Criado 13 de novembro de 2018
Ultima resposta 13 de nov. de 2018
Respostas 2
Participantes 3