Leitura de Arquivo, repete a última linha

2 respostas
pix

Seguinte, estou usando o código abaixo para leitura de txt, o problema é que ele lê duas vezes a última linha.

BufferedReader reader = new BufferedReader(new FileReader("I:\dataflex\ordemb.txt"));
    String dados[] = new String[3];
    String linha = reader.readLine();
    while (linha != null) {
            StringTokenizer st = new StringTokenizer(linha, "f|\"");
        //empresa
        dados[0] = st.nextToken();
        //embarque
        dados[1] = st.nextToken();
        //placa
        dados[2] = st.nextToken();

    }
    linha  = reader.readLine();
    reader.close ();

2 Respostas

ajfilho

Bom dia…

Parceiro, eu uso esse código para fazer a leitura:

public static String mostraConteudoArquivo(String fileName) throws IOException { BufferedReader in = new BufferedReader(new FileReader(fileName)); String line; StringBuffer buffer = new StringBuffer(); while ((line = in.readLine()) != null) { buffer.append(line + "\n"); } in.close(); return buffer.toString(); }

De repente pode te ajudar!!

Abraços!

lcegatti

No seu código o

linha  = reader.readLine();

deveria estar dentro da instrução while.

Ou vc pode fazer do jeito que o amigo indicou:

while ((linha = reader.readLine()) != null) {  
             //.....
         }

[]'s

Criado 23 de dezembro de 2008
Ultima resposta 23 de dez. de 2008
Respostas 2
Participantes 3