Erro de Leitura de arquivo (linha sim, linha não)

2 respostas
S
private void conteudoTexto() {
                
        final JFileChooser fc = new JFileChooser();//cria um jfilechooser
        int resultado = fc.showOpenDialog(fc);
        fc.setFileSelectionMode(fc.FILES_ONLY);
        
        //se o botao apertado for o "open"
        if(resultado == fc.APPROVE_OPTION){
            filename = fc.getSelectedFile();//pega o arquivo selecionado 
            nomearquivo = filename.toString();//transforma o nome dele pra string
            
            if(filename.exists()){
                try{                    
                    File letexto = new File(nomearquivo);//serve meramente para depois recuperar o path                  
                    path = letexto.getAbsolutePath();//recupera o path
                                   
                    BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(nomearquivo)));
                    
                    while(in.readLine() != null){
                        text += in.readLine() + ";";
                        //num_linhas++;
                        
                    }
                    in.close();//fecha o BufferedReader
                }                              
                catch(IOException ex){
                     ex.printStackTrace();
                }
            }
        }        
    }

o problema é o seguinte eu tenho um arquivo texto, quero ler esse arquivo e passar o conteudo para uma variavel para depois tratar, só que o programa só le uma linha sim e outra linha não, ou seja, eu perco metade do conteúdo do meu arquivo...

desde já agradeço a ajuda

2 Respostas

peczenyj
vc faz:
while(in.readLine() != null){//aqui vc lê uma linha
                         text += in.readLine() + ";"; //aqui le de novo
                         //num_linhas++;
                         
                     }
deveria fazer:
String linha = null;
while((linha = leitor.readLine())) {
    test += linha+ ";";
}
S

valew, isso resolveu!!!

Criado 2 de maio de 2006
Ultima resposta 2 de mai. de 2006
Respostas 2
Participantes 2