This guide will teach the method of opening a file in Java. So, let’s start!
Java Classes Used for Opening a File
In Java, you can utilize any of the given classes in your program for opening a file:
- Java Scanner class
- Java Desktop class
- Java BufferedReader class
- Java FileReader class
- Java FileInputStream class
- Java nio Package
Here, we will discuss the top three most utilized Java classes for opening a file.
Method 1: Opening a File Using the Java Scanner Class
The java.util package contains the Scanner class. The constructor of the Java Scanner class enables you to open and read the file’s content by taking a file as an argument. The Scanner class also provides various methods for reading data from a file, such as the nextLine() method.
In this example, we will use the Java Scanner class to open and read the content of the java11.txt file. To do so, import the java.util.Scanner class and follow the given instructions:
- Firstly, in the try block, we will create a variable named myfile that will be used to refer to the required file using the given path.
- Then, we will create a Scanner class object named openfile and pass myfile to it as an argument.
- Within the while loop, the object openfile will call the method hasNextLine() to read the file by using the nextLine()
- Close the scanner object openfile by using the close()
If the particular file does not exist, catch block will throw FileNotFoundException:
The given output indicates that we have successfully read the content of our java11.txt file:
Now, let’s head toward the other method for opening a file in a Java program.
Method 2: Opening a File Using FileInputStream Class
FileInputStream is another Java class that can be utilized for opening and reading a file in Java. Similar to the Scanner class constructor, the constructor of the FileInputStream class also accepts the file as an argument. However, it reads the file in the form of bytes.
The below example will show the method to open a file using FileInputStream class. Here is the list of steps that we have followed:
- Firstly, import the io.FileInputStream package into your project.
- In the try block, we will create a variable named myfile that accepts the file’s location as an argument.
- Then, create an object of the FileInputStream class named openfile and pass the created file variable to it.
- In the added while loop, the object openfile will read the required file in byte form.
The catch block will throw an Exception if the file does not exist:
Method 3: Opening a File Using the Java BufferedReader Class
The BufferedReader class belongs to the java.io package. Its constructor can be utilized for opening and reading the text with the help of a character input stream.
Have a look at the below-given example to open a file in a Java program with the help of Buffered Reader class:
- Firstly, import theio package for the BufferedReader class in your project.
- Add a try block and create a variable named myfile that accepts the file path as an argument.
- Then, create an object of the BufferedReader class named openfile and pass a file to it.
- The openfile object will read the file by using buffering-character input stream.
Lastly, add a catch block that throws an Exception if the file does not exist:
We have given all the important information related to opening a file in Java.
To open and read a file in Java, we have predefined packages, methods, and classes, including the Scanner class, FileInputStream Class, and BufferedReader class. The Scanner class offers different methods to read data while the FileInputStream Class reads data in the form of bytes and the BufferedReader Class reads in the form of buffering-character input streams. This guide discussed the procedure related to opening a file in Java.