Não está gravando as demais linhas!

1 resposta
snowblacksoul

Olá senhores,
tenho que ler dois arquivos .txt e verificando se as linhas tem os dados iguais, se tiver irá criar um outro arquivo txt, com o que for igual
mas só está gravando apenas a primeira linha, o que estou fazendo errado!
Segue o codigo.

public class TesteLerDoisArquivos {

    public static void main(String[] args) throws FileNotFoundException, IOException {

        try {
            //File file = new File("c:/teste/eliana_final3.txt"); // o path do
            File file = new File("g:/scripts/teste1.txt"); // o path do
            File file2 = new File("g:/scripts/teste2.txt"); // o path do
            // arquivo, ex.:
            // "C:\Importacao.txt"
            FileReader fileReader = new FileReader(file);
            BufferedReader bufferedReader = new BufferedReader(fileReader);

            FileReader fileReader2 = new FileReader(file2);
            BufferedReader bufferedReader2 = new BufferedReader(fileReader2);

            // List<Dados> listDados = new ArrayList<Dados>();
            while (bufferedReader.ready()) {

                while (bufferedReader2.ready()) {

                    String linha = bufferedReader.readLine(); // lê uma linha...
                    String linha2 = bufferedReader2.readLine(); // lê uma linha...

                    file.compareTo(file2);

                    if (linha.toString().equals(linha2.toString())) {
                        System.out.println("igual");
                        PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("g:/scripts/daniel.txt")));

                        System.out.println(linha);

                        // delimitador...
                        pw.write(linha +"\n");

                        pw.flush();
                        pw.close();
                        
                    } else {
                        System.out.println("diferente");
                    }
                }
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}

1 Resposta

tiago.vt
String linha;
while ((linha = bufferedReader.readLine()) != null) {
  System.out.println(linha);
}
Criado 31 de agosto de 2012
Ultima resposta 31 de ago. de 2012
Respostas 1
Participantes 2