1 ÏÏÏimport java.util.Scanner;
2 ÏÏÏimport
java.io.*;
3 /**
4 *
5 * This file shows what happens if you
try to read from a closed file
6 * Note that the instantiation does not have to be in a try/catch
block
7 * if there is a file named input2.dat in the directory. This is NOT
8 * something you should do in your programs.
9 *
10 * @author Elizabeth Adams
11 *
12 */
13 ÏÕÖ×public class TryToReadFromClosedFile
14 Ïϧ{
15 ÏϧÏÞßàpublic static void main (String [] args)throws
FileNotFoundException
16 ÏϧÏϧ{
17 ÏϧÏϨ¹íÏScanner myFileScanner;
18 ÏϧÏϨ¹íÏString temp;
19 ÏϧÏϧ
20 ÏϧÏϨ¹¹ÏmyFileScanner = new Scanner (new File ("input2.dat"));
21 ÏϧÏϧ
22 ÏϧÏϨ¹¹Ïtemp = myFileScanner.nextLine();
23 ÏϧÏϨ¹¹ÏSystem.out.println (" picked up *"
+ temp + "*");
24 ÏϧÏϨ¹¹ÏmyFileScanner.close();
25 ÏϧÏϨ¹¹Ïtemp = myFileScanner.nextLine(); /* this line causes
26 ÏϧÏϧ Exception in thread "main"
java.lang.IllegalStateException: Scanner closed
27 ÏϧÏϧ at
java.util.Scanner.ensureOpen(Scanner.java:1025)
28 ÏϧÏϧ at
java.util.Scanner.findWithinHorizon(Scanner.java:1596)
29 ÏϧÏϧ__at
java.util.Scanner.findWithinHorizon(Scanner.java:1562)
30 ÏϧÏϧ__at
java.util.Scanner.nextLine(Scanner.java:1468)
31 ÏϧÏϧ__at
TryToReadFromClosedFile.main(TryToReadFromClosedFile.java:22)
32 ÏϧÏϧ */__
33 ÏϧÏϨ¹¹ÏSystem.out.println (" picked up *"
+ temp + "*");
34 ÏϧÏϧ
35 ÏϧÏÏ©}
36 ÏÏ©}_
37