miércoles, 20 de marzo de 2013

Comparar dos Archivos de Texto linea por linea

Diseñar una aplicación en java que solicite desde el teclado, el nombre de dos archivo de texto y cuyo contenidos deberá comparar linea por linea.
import java.io.FileReader;
import java.io.IOException;
import java.io.BufferedReader;
import java.util.Scanner;

public class Compara_LineaxLinea
{
    public static void main(String[] args) throws IOException
    {
        Scanner teclado = new Scanner(System.in);
        System.out.print("Escribe el primer archivo de texto a comparar: ");
        String archivo1 = teclado.next();
        System.out.print("Escribe el segundo archivo de texto a comparar: ");
        String archivo2 = teclado.next();
        
        try 
        {           
            BufferedReader lee1 =new BufferedReader(new FileReader(archivo1));
            BufferedReader lee2 =new BufferedReader(new FileReader(archivo2));
            
            String linea1="", linea2 = "";
            System.out.println("Comparando Archivos...");
            int cont1=0, cont2=0;
            
            while(linea1!=null || linea2!=null)
            {
              linea1=lee1.readLine();
              linea2=lee2.readLine();
              
              if(linea1!=null)
              {
                  cont1++;  
              }  
              if(linea2!=null)
              {
                  cont2++;
              }
            }
            System.out.println("Fin de comparacion de los archivos...\n");  
            System.out.println("El primer archivo tiene "+cont1+" Lineas");  
            System.out.println("El segundo archivo tiene "+cont2+" Lineas");
            if(cont1 == cont2)
            {
                System.out.println("Los archivos comparardos son iguales");
            }
            else
            {
                System.out.println("Los archivos comparados son diferentes");
            }
            lee1.close();
            lee2.close();
        }catch(IOException e)
        {
            System.out.println("Ha ocurrido un error:");
        }
        finally
        {
          System.out.println("fin...");
        }
    }
}

Output:
Escribe el primer archivo de texto a comparar: aprobados.txt
Escribe el segundo archivo de texto a comparar: reprobados.txt
Comparando Archivos...
Fin de comparacion de los archivos...

El primer archivo tiene 6 Lineas
El segundo archivo tiene 4 Lineas
Los archivos comparados son diferentes
fin...

No hay comentarios:

Publicar un comentario


Entradas populares