DevMedia

Pesquisar em txt

0
Como posso fazer uma pesquisa num arquivo txt, entro com o nome ou parte e retorna o nome e telefone na tela? O arquivo tem somente nome e telefone.

Achei esse código na net, só que mostra todos:

#Código
    import javax.swing.*;  
    import java.io.*;  
      
      
    public class PesquisaNome{  
      
    public static void main(String [] args){  
      
    File bd = new File (cadastro.txt);  
    int flag=0;  
    if (bd.exists()){  
    try{  
    FileReader fr = new FileReader(bd);  
    BufferedReader ler = new BufferedReader (fr);  
    String temp=, a=, nome=;  
    nome = JOptionPane.showInputDialog(Digite o Nome:);  
      
    while ((temp=ler.readLine())!=null){  
    a += temp+\n;  
    if (temp.equals(Nome: +nome))  
    flag = 1;  
      
    }  
      
    if (flag == 1)  
    JOptionPane.showMessageDialog(null,a);  
    else  
    JOptionPane.showMessageDialog(null,Nome não encontrado);  
      
    }  
    catch (IOException ex){  
    JOptionPane.showMessageDialog(null, Erro na leitura);  
    }  
      
    }  
    System.exit(1);  
      
    }  
    }   

Respostas (4)

0
import javax.swing.*;
import java.io.*;


public class PesquisaNome{

public static void main(String [] args){

File bd = new File (cadastro.txt);
int flag=0;
if (bd.exists()){
try{
FileReader fr = new FileReader(bd);
BufferedReader ler = new BufferedReader (fr);
String temp=, a=, nome=;
nome = JOptionPane.showInputDialog(Digite o Nome:);

while ((temp=ler.readLine())!=null){
a += temp+\n;
if (temp.equals(Nome: +nome))
flag = 1;

}

if (flag == 1)
JOptionPane.showMessageDialog(null,a);
else
JOptionPane.showMessageDialog(null,Nome não encontrado);

}
catch (IOException ex){
JOptionPane.showMessageDialog(null, Erro na leitura);
}

}
System.exit(1);

}
}
0

Citação:
Como posso fazer uma pesquisa num arquivo txt, entro com o nome ou parte e retorna o nome e telefone na tela? O arquivo tem somente nome e telefone.

Achei esse código na net, só que mostra todos:

#Código
    import javax.swing.*;  
    import java.io.*;  
      
      
    public class PesquisaNome{  
      
    public static void main(String [] args){  
      
    File bd = new File (cadastro.txt);  
    int flag=0;  
    if (bd.exists()){  
    try{  
    FileReader fr = new FileReader(bd);  
    BufferedReader ler = new BufferedReader (fr);  
    String temp=, a=, nome=;  
    nome = JOptionPane.showInputDialog(Digite o Nome:);  
      
    while ((temp=ler.readLine())!=null){  
    a += temp+\n;  
    if (temp.equals(Nome: +nome))  
    flag = 1;  
      
    }  
      
    if (flag == 1)  
    JOptionPane.showMessageDialog(null,a);  
    else  
    JOptionPane.showMessageDialog(null,Nome não encontrado);  
      
    }  
    catch (IOException ex){  
    JOptionPane.showMessageDialog(null, Erro na leitura);  
    }  
      
    }  
    System.exit(1);  
      
    }  
    }   


postei novamente o código, saiu errado. Está abaixo.
0
import javax.swing.*;
import java.io.*;

public class PesquisaNome {

public static void main(String[] args) {

File bd = new File(cadastro.txt);
int flag = 0;
if (bd.exists()) {
try {
FileReader fr = new FileReader(bd);
BufferedReader ler = new BufferedReader(fr);
String temp = , a = , nome = ;
nome = JOptionPane.showInputDialog(Digite o Nome:);

while ((temp = ler.readLine()) != null) {
a += temp + \n;
//ou se preferir mostarr só a linha em caso do arquivo ser muito grande
//a = temp;
if (temp.contains(nome))
flag = 1;
}

if (flag == 1)
JOptionPane.showMessageDialog(null, a);
else
JOptionPane.showMessageDialog(null, Nome não encontrado);

} catch (IOException ex) {
JOptionPane.showMessageDialog(null, Erro na leitura);
}

}
System.exit(1);

}
}


att Davi
0
Deu certo ?

Valeu !