Ler um arquivo txt

3 respostas
DriAoki

Bom, eu pude ver que existem muitos tópicos sobre arquivos txt, mas não consegui tirar minha dúvida com nenhum deles!
Desenvolvi o seguinte código:

[color=olive]

boolean situacao = false;

// Situação inicial da catraca é falsa, ou seja, barradaString numMat=( jTextField1.getText() );

// entrada de dados

try {

FileReader arq = new FileReader(“C:\Matricula.txt”);     // ler o arquivo

BufferedReader leitor = new BufferedReader(arq);       // criando o leitor

String linha;

String [] campos; // matriz redimensionável inteligente

while (( linha = leitor.readLine()) != null){

campos = linha.split("\t");

// leitura do arquivo
for (int cont = 0; cont<20; cont++){
    // contador

JOptionPane.showMessageDialog(null, campos[cont]);
// mostra o que existe no aquivo

if ((numMat).equals(campos[cont])){

// faz uma comparação. Se for verdadeira continua neste procedimento

JOptionPane.showMessageDialog(null, Matrícula Em Dia!”);

situacao = true;

SistemaCatraca novaCatraca = new SistemaCatraca (situacao);

novaCatraca.getLibera();

// caso contrário pula para o else
}
else {
    JOptionPane.showMessageDialog(null, "Matrícula incompatível!");
    situacao = false;
    SistemaCatraca outraCatraca = new SistemaCatraca (situacao);
    outraCatraca.getBarra();
    // em caso de falsidade da afirmação a catraca fica barrada
}
}
}
}// fim do try
catch(IOException erro)
{
JOptionPane.showMessageDialog(null, "Erro na manipulação de Arquivo");
}

// caso não consiga ler o arquivo
[/color]

Meu problema está na linha em negrito… eu quero que ele leia o arquivo mas sem mostrar as informações que ele lê… com certeza não será com o JOptionPane… Se eu deixo sem nada e faço um if/else ele só funciona para o campos[1]. Alguém pode me ajudar?

3 Respostas

Anderson_Schmidt

Qual é a excecao lancada?

PS: vc realmente tem as 20 posicoes em cada linha do arquivo?

Schmidt

LPJava

cara eu nao saco muito de interface grafica… mais quando eu mando ler dados de um arquivo eu faco o seguinte:

BufferedReader br = new BufferedReader(new Filew Reader("a.txt"));
String s = br.readLine();

pego os dados e armazendo em uma string mais nao imprimo nada… se quiser imprimir os dados lidos em cada linha ai mando imprimir a string de cada linha usando while… mas ai eh outra historia… bom nao sei se essa minha forma pode ajudar vc com interface grafica… mais usando o prompt roda tranquilo :smiley:

DriAoki

Assim deu certo!!!
Obrigada!!

Criado 30 de abril de 2007
Ultima resposta 30 de abr. de 2007
Respostas 3
Participantes 3