File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes unreported exception Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "unreported exception" Watch "unreported exception" New topic

unreported exception

Marjorie Gyles
Ranch Hand

Joined: Nov 03, 2012
Posts: 42

I am getting this error, but I don't know what it means. I've copied the exercise straight off the example, but it won't compile. What am I doing wrong? I haven't learned about exceptions, yet so I'm not trying to throw any. error: unreported exception FileNotFoundException; must be caught or declared to be thrown
PrintWriter outputFile = new PrintWriter(filename);
1 error

Kemal Sokolovic

Joined: Jun 19, 2010
Posts: 825

And error message says that PrintWriter throws one, so when you declare it you need to put it in try block or try-with-resources statement. Another option would be to declare your method to throw the exception but I would recommend one of the first two options.

The quieter you are, the more you are able to hear.
Atul Itankar

Joined: Jan 09, 2013
Posts: 13
There are two ways to handle this error:-
1) To add throws after method declaration like wise

2) declare this variable enclose with try and catch block

[Added code tags - see UseCodeTags for details]

Atul Itankar

InfoCepts |
Matthew Brown

Joined: Apr 06, 2010
Posts: 4542

Just to add a bit more context: Java has the concept of "checked exceptions". These are all exceptions that extend Exception, except for those that extend RuntimeException. They are "checked" because the compiler forces you to handle them. If you execute any code that might throw a checked exception, you have two options:

- Handle it there and then, in a try/catch block
- Declare your method as throwing that exception, using the throws statement. This forces the next calling method above to deal with it (again, using one of the two approaches).

(these correspond to the two approaches Kemal and Atul mention).

The PrintWriter constructor that takes a String as an argument has the declaration throws FileNotFoundException - see the Javadocs at That's a checked exception, so you have to use one of the two approaches listed above.

See the Java Tutorials for more on exceptions.
I agree. Here's the link:
subject: unreported exception
It's not a secret anymore!