Ir ao conteúdo

Pesquisa em arquivo .txt


alex_stunz

Posts recomendados

Postado

Pessoal, outra dúvida...rsrs...

Bem, preciso fazer um programa q pesquise num arquivo .txt q um outro programa Java mesmo criou....

Utilizei o FileReader abaixo, mas ele não retornou nada...nenhum valor...

Dentro do arquivo TXT existem 6 linhas dispostas dessa forma:

Código: 1

Nome: Alexandre

Preço: 10,00

Quantidade: 19

Unidade: 2

Fornecedor: FORN BLUE FOX

Marca: VOLKS

Eu preciso pesquisar o nome, e se ele encontrar, preciso retornar numa janela (JOptionPane) todos os itens acima...

Alguém tem ideia??

Desde já, valeu!!

//código

import javax.swing.*;

import java.io.*;

public class pesquisanome

{

/* Alteração */

public static void main(String [] args)

{

File bd = new File ("cadastro.txt");

if (bd.exists())

{

try

{

FileReader fr = new FileReader(bd);

BufferedReader ler = new BufferedReader (fr);

String temp="", a="", nome="";

nome = JOptionPane.showInputDialog("Digite o Nome:");

do

{

a+=temp+ "\n";

temp=ler.readLine();

}while(temp.equals(nome));

JOptionPane.showMessageDialog(null,"Arquivo Lido");

JOptionPane.showMessageDialog(null,a);

}

catch (IOException ex)

{

JOptionPane.showMessageDialog(null, "Erro na leitura");

}

}

}

}

Postado

Oi. O programa estava praticamente certo, mas o problema era que a variavel temp ao invés de receber o nome Alexandre ela estava recebendo Nome: Alexandre entende. Com isso a comparação nunca ia dar certo..

Eu fiz o programa aqui. Acho que deve ser isso que você deve estar querendo.

Espero ter ajudado ok.

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);

}

}

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...