Java Pegar linha por linha de um textarea
Bom dia pessoal, gostaria que pudessem me ajudar com um pequeno programinha que estou fazendo, pesquisei no google e em diversos lugares e não conseguir a resolução para o meu problema.
Tenho um jtextarea com varias linhas e cada linha tem dois valores serapados pelo caractere |, o que eu preciso fazer é pegar linha por linha, separar a linha em duas variaveis o que está antes do | e o que vem depois, cada um em uma variavel diferente. Essas varias são usadas em funções e depois de todo o tratamento elas tem uma saida pelo System.out.println. Preciso fazer isso na forma de um loop, até que a ultima linha tenha sido pegada;
Eu até consegui fazer usando um for, segue o código
O meu problema em usar o for é que se eu coloco 100 valores no jtextarea e inicio o método que pega linha a linha, a saída do System.out.println(variavel1 + variavel2); não acontece uma a uma, a saída está sendo impressa toda de uma vez. O sistema congela até acabar de pegar todas as linhas e usar os métodos e só ai imprime todos os testes de uma vez.
Acho que consegui ser bem claro, quero que a cada teste de linha o print na tela aconteça antes de pegar a próxima linha.
Uso o netbeans com a linguagem java.
Tenho um jtextarea com varias linhas e cada linha tem dois valores serapados pelo caractere |, o que eu preciso fazer é pegar linha por linha, separar a linha em duas variaveis o que está antes do | e o que vem depois, cada um em uma variavel diferente. Essas varias são usadas em funções e depois de todo o tratamento elas tem uma saida pelo System.out.println. Preciso fazer isso na forma de um loop, até que a ultima linha tenha sido pegada;
Eu até consegui fazer usando um for, segue o código
String str[] = this.txt1.getText().split("\\n");
for (String nome : str) {
if (nome.contains("|")){
String[] login = nome.split(Pattern.quote("|"));
String variavel1 = login[0];
String Varialvel2 = login[1];
String lintatoda = nome;
metodo1(variavel1, variavel2);
System.out.println(variavel1 + variavel2);
O meu problema em usar o for é que se eu coloco 100 valores no jtextarea e inicio o método que pega linha a linha, a saída do System.out.println(variavel1 + variavel2); não acontece uma a uma, a saída está sendo impressa toda de uma vez. O sistema congela até acabar de pegar todas as linhas e usar os métodos e só ai imprime todos os testes de uma vez.
Acho que consegui ser bem claro, quero que a cada teste de linha o print na tela aconteça antes de pegar a próxima linha.
Uso o netbeans com a linguagem java.
Edson Machado
Curtidas 0
Respostas
Luiz Vichiatto
01/10/2017
O "textarea" não tem quebra de linha, você tem que indicar a quebra quando está lendo o arquivo.
Veja se este tópico pode te auxiliar.
http://www.guj.com.br/t/problema-para-pular-linha-no-textarea/226374
Veja se este tópico pode te auxiliar.
http://www.guj.com.br/t/problema-para-pular-linha-no-textarea/226374
GOSTEI 0