Source of FileClassDemo.java


  1: import java.util.Scanner;
  2: import java.io.File;
  3: import java.io.FileNotFoundException;
  4: 
  5: public class FileClassDemo
  6: {
  7:     public static void main(String[] args)
  8:     {
  9:         System.out.print("Enter file name: ");
 10:         Scanner keyboard = new Scanner(System.in);
 11:         String fileName = keyboard.next( );
 12: 
 13:         File fileObject = new File(fileName);
 14:                 boolean fileOK = false;
 15:         while (!fileOK)
 16:         {
 17:             if  (!fileObject.exists( ))
 18:                 System.out.println("No such file");
 19:             else if (!fileObject.canRead( ))
 20:                 System.out.println("That file is not readable.");
 21:                     else
 22:                             fileOK = true;
 23:                            
 24:                     if (!fileOK)
 25:                     {
 26:                 System.out.println("Enter file name again:");
 27:                 fileName = keyboard.next( );
 28:                 fileObject = new File(fileName);
 29:                     }        
 30:         }
 31: 
 32:                 Scanner inputStream = null;
 33:                 System.out.println("The file " + fileName + 
 34:                                                    "\ncontains the following lines\n");
 35:                 try
 36:                 {
 37:                     inputStream = new Scanner(new File(fileName));
 38:                 }
 39:                 catch (FileNotFoundException e)
 40:                 {
 41:                     System.out.println("Error opening the file " + fileName);
 42:                     System.exit(0);
 43:                 }                
 44:                 
 45:                 while (inputStream.hasNextLine())
 46:                 {
 47:                         String line = inputStream.nextLine();
 48:                         System.out.println(line);
 49:                 }
 50: 
 51:                 inputStream.close();
 52:     }
 53: }