Estou com dificuldades em trabalhar com o JTextArea. Tenho um JTextArea, com um texto.
Desejo ler caractere por caractere deste texto, mas sem “jogar” o texto para outro lugar, ler no próprio JTextArea, e ir concatenando os caracteres em uma variável auxiliar.
mas qual o problema que voc~e está tendo?
Não achou o campo que está o texto ? Não conseguiu renderizar?
thiago.correa
1º Pegue o texto do text area e use o método String.toCharArray()
2º Faça um laço que leia esse array!
Faça uns testes e qualquer coisa posta os códigos e as suas dúvidas!
H
hma05
Deixa eu explicar melhor.
Tenho um JTextArea, com um texto. Desejo percorrer este texto, na própria JTextArea, como se fosse um Array, onde eu possa ler caractere a caractere, mas sem precisar mover o texto da JTextArea, para outra estrutura.
Seria algo como o método JTextArea.getText(); mas que devolvesse caractere por caractere, em vez do texto todo.
L
leonardocregis
Especifique melhor o que vai ser exibido para o usuário final.
Esse requisito parece ser desnecessariamente complicado, se você usar uma estrutura intermediária é muito fácil.
Mas você pode ler caracter à caracter, basta usar as técnicas de manipulação de strings e extrair o que você quer.
Marky.Vasconcelos
Mas qual o problema em fazer algo assim?
Stringtext=textArea.getText();char[]chars=text.toCharArray();for(inti=0;i<chars.lenght;i++)System.out.println("Char at '"+i+"' is '"+chars[i]"'");
Como assim direto do TextArea? Não quer nem pegar a String?
H
hma05
Isso mesmo, sem pegar String.
Ir “pegando” char por char individualmente do TextArea.
L
leonardocregis
Então sua dúvida era simplesmente como conseguir extrair um array de uma string… porque estamos usando uma estrutura intermédiaria (o array de chars) para percorrer a sua string…
H
hma05
Obrigado a todos que me ajudaram.
Solucionei o problema da seguinte forma:
JTextArea.getText().trim().charAt(k);
Obrigado.
Marky.Vasconcelos
Mas de qualquer forma voce continua pegando do objeto String. A unica diferença é que voce nao esta atribuindo valor a nada mas chama seus métodos (.trim().charAt(k))
L
leonardocregis
È isso ai !
vc só está deixando o código mais enxuto , porém por de trás dos panos, o compilador está criando referências e atribuições…