Oi gente!
Estou fazendo um projeto no qual criei um arquivo “cadastro.txt” para usar de banco de dados.
Quando alguém se cadastra, no meu txt fica assim:
| |
|Digite seu nome e sobrenome...|Digite a partida...|Digite o destino...|ex 00h00|ex. (XX) XXXX-XXXX|ex. [email removido]|
| |
|Digite seu nome e sobrenome...|Digite a partida...|Digite o destino...|ex 00h00|ex. (XX) XXXX-XXXX|ex. [email removido]|
| |
|Digite seu nome e sobrenome...|Digite a partida...|Digite o destino...|ex 00h00|ex. (XX) XXXX-XXXX|ex. [email removido]|
| |
Usei “|” para separar as informações e deixei esse “| |” entre linhas para pular linha quando fosse recuperar/imprimir meus dados.
Agora, preciso recuperar essas informações e imprimi-las, porém não posso usar System.out.print pois estou usando Interface Gráfica, logo estou tentando criar um método em outra classe e importá-lo para minha interface, o qual retorne uma “String texto” com todas as informações do meu arquivo txt bonitinhas… Esse retorno já está indo direto para uma jTextArea…
Enfim, fiz um método mas está com algum erro que não consigo enxergar. Quando clico no botão da minha interface para mostrar todos os dados cadastrados, ele fica com um looping infinito… Segue meu método abaixo:
public String LerCadastro(){
String linha, texto = "";
String arquivo = "cadastro.txt";
try{
BufferedReader ler = new BufferedReader(new FileReader(arquivo));
linha = ler.readLine();
StringTokenizer st = new StringTokenizer(linha,"|");
String[] arr = new String[st.countTokens()];
int i = 0;
while(linha != null){
while(st.hasMoreTokens()){
arr[i] = st.nextToken();
texto = texto + arr[i] + "\n";
i++;
}
}
}
catch(Exception error){
System.out.print("ERRO DURANTE A MANIPULAÇÃO DO ARQUIVO " +arquivo);
}
return texto;
}
Enfim, também fiz desse jeito (separando dados por “| |”) pensando que seria mais fácil desenvolver uma pesquisa no meu banco de dados. Seria uma pesquisa na qual o usuário digita Nome e/ou Cidade de Partida e/ou Cidade de Destino e como retorno tem a linha do banco de dados. Se alguém puder me dar uma luz de como começar essa pesquisa, ficaria muito grato! Não sei se devo usar vetores (ou como usá-los para pesquisa), ou se é apenas comparação de Strings linha por linha…
Espero que possam me ajudar… =)
Abrass!