Please fix the code it loops util finds all the differences
Please fix the code it loops util finds all the differences in two files.
import java.io.*;
import java.util.Scanner;
public class {
public static void differences(Scanner file1, Scanner file2)
throws IOException{
String firstLines = file1.nextLine();
String secondLines = file2.nextLine();
while(firstLines != null || secondLines != null){
int lineNum = 1;
int comparison = firstLines.compareTo(secondLines);
System.out.println(\"Differences found:\");
if(comparison != 0){
System.out.println(\"Line \"+lineNum);
System.out.println(\"<\"+firstLines);
System.out.println(\">\"+secondLines);
System.out.println(\" \");
}
break;
}
}
public static void main (String[]args)
throws FileNotFoundException, IOException{
Scanner console = new Scanner(System.in);
System.out.println(\"Please enter the name of the first file: \");
File firstFile = new File(console.nextLine());
Scanner userFile1 = new Scanner(firstFile);
System.out.println(\"Please enter the name of the second file: \");
File secondFile = new File(console.nextLine());
Scanner userFile2 = new Scanner(secondFile);
console.close();
differences(userFile1, userFile2);
}
}
Solution
import java.io.*;
 import java.util.Scanner;
 public class A {
 public static void differences(Scanner file1, Scanner file2)
 throws IOException{
   
 String firstLines = file1.nextLine();
 String secondLines = file2.nextLine();
   
 while(firstLines != null || secondLines != null){
 int lineNum = 1;
 int comparison = firstLines.compareTo(secondLines);
 System.out.println(\"Differences found:\");
 if(comparison != 0){
 System.out.println(\"Line \"+lineNum);
 System.out.println(\"<\"+firstLines);
 System.out.println(\">\"+secondLines);
 System.out.println(\" \");
 }
 break;
 }
   
 }
   
 public static void main (String[]args)
 throws FileNotFoundException, IOException{
 
 Scanner userFile1=null,userFile2=null;
 Scanner console = new Scanner(System.in);
 System.out.println(\"Please enter the name of the first file: \");
 System.out.flush();
 try{
 String filename =console.nextLine();
 File firstFile = new File(filename);
 userFile1 = new Scanner(firstFile);}
 catch(Exception e){e.printStackTrace();}
   
   
   
 
   
 System.out.println(\"Please enter the name of the second file: \");
 try{
 File secondFile = new File(console.nextLine());
 userFile2 = new Scanner(secondFile);
 }
 catch(Exception e1){
 e1.printStackTrace();}
 finally{
 console.close();}
 
 differences(userFile1, userFile2);
 }
 }



