Write a program that opens a Java source file adds line numb
Solution
import java.io.BufferedReader;
 import java.io.FileReader;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Scanner;
 
 
 public class PrintLineNum {
 
     public static void main(String[] args) throws IOException {
         Scanner inputScanner = new Scanner(System.in);
 
         // Prompting the user for a Java Source File
         System.out.println(\"Please enter the name of a Java Source File:\");
         String javaSourceFileName = inputScanner.nextLine();
 
         // Read the file.
         String currentLineofCode;
 
         // Output file name formatting
         String javaSourceFileNameWithLineNumber = javaSourceFileName.replace(\".\", \"_\");
         javaSourceFileNameWithLineNumber += \".txt\";
 
         PrintWriter writer = new PrintWriter(javaSourceFileNameWithLineNumber, \"UTF-8\");
 
         
         // The following is a auto-closable try block to read the source file, append line num and populate in the output file.
         try(BufferedReader bReader = new BufferedReader(new FileReader(javaSourceFileName))){
             int lineNum = 0;
             while ((currentLineofCode = bReader.readLine()) != null) {
                 System.out.println(currentLineofCode);
                 writer.printf(\"%03d:\", ++lineNum);
                 writer.print(currentLineofCode);
                 writer.println();
             }
         }
 
         inputScanner.close();
         writer.close();
 
     }
 }

