Inserir aspas entre nomes digitados pelo usuario

8 respostas
O

Seguinte o usuario digita uma serie de nomes separados por virgulas, para serem
pequisados no meu banco.
por exemplo:
joao,maria,jose

Eu recebo esses nomes em uma variavel, e preciso adicionar aspas a cada um deles
para poder passar para o select do banco. ou seja, eu preciso
PEGAR
joao,maria,jose
E TRANFORMAR em
“joao”,“maria”,“jose”

Alguem sabe um jeito eficiente de fazer isso ?
eu fiz com for, mas ficou mt feio. e acho q se a pessoa
digitar mts nomes vai acabar ficando lento, né ?

String listadegenes=""; String teste[] = gene.getText().split(","); for(int i=0;i<teste.length;i++){ listadegenes += '"'+teste[i]+'"'; if(i != teste.length-1){ listadegenes += ","; } }

8 Respostas

drsmachado

O método replace não funciona?

O

nao sei como usar esse metodo replace

drsmachado

http://www.google.com.br e pesquisa por replace em String java

Já aviso, ele sozinho não vai resolver. Você precisará adaptar algumas soluções.

guilherme.dio
String aspas = " ' ";
String nome = "joao";
nome = aspas.concat(joao);
nome = nome.concat(aspas);

Resultado do primeiro concat = 'joao
Resultado do segundo concat = ‘joao’

O

to pesquisando o replace no google ja.
mas akele codigo do for que eu fiz torna a aplicação lenta se o usuario
inserir 50 nomes?? é a media de nomes q sao passados na consulta

O

Vlw galera, consegui.
Agora ficou mt mais bonito, e acredito que mt mais eficiente.

String lista = gene.getText(); String fim ='"'+lista.replaceAll(",", '"'+","+'"')+'"';

Obrigado

pedruhenrik

StringBuilder sb = new StringBuilder(); for (String string : teste) { sb.append("\""); sb.append(string); sb.append("\","); } listadegenes = sb.toString(); listadegenes = listadegenes.substring(0,listadegenes.length()-1);

seria isso gambiarra? ou apenas outra versão da roda?

att,

drsmachado

osakakitano:
Vlw galera, consegui.
Agora ficou mt mais bonito, e acredito que mt mais eficiente.

String lista = gene.getText(); String fim ='"'+lista.replaceAll(",", '"'+","+'"')+'"';

Obrigado


Eu tinha plena certeza que você conseguiria.
Quando li tua pergunta, imaginei exatamente isto.

String nomes = textField.getText();
String paraBuscar = '"' + nomes.replaceAll('","') + '"';
//ou
String paraBuscar = "\"" + nomes.replaceAll("\",\"") + "\"";
Criado 7 de julho de 2011
Ultima resposta 7 de jul. de 2011
Respostas 8
Participantes 4