FileInputStream
Read file with FileInputStream
With this example we are going to demonstrate how to read a File with a FileInputStream. The FileInputStream obtains input bytes from a file in a file system. In short, to read a File with a FileInputStream you should:
- Create a new File instance by converting the given pathname string into an abstract pathname.
- Create a FileInputStream by opening a connection to an actual file, the file named by the path name name in the file system.
- Create a StringBuffer with no characters in it and an initial capacity of 16 characters.
- Read data from the file using
read()API method of FileinputStream and append it to the StringBuffer, usingappend(char c)API method of StringBuffer. - Close the stream using close() API method.
Let’s take a look at the code snippet that follows:
package com.javacodegeeks.snippets.core;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class ReadFileWithFileInputStream {
public static void main(String[] args) {
File file = new File("inputfile.txt");
FileInputStream fin = null;
int ch;
StringBuffer sb = new StringBuffer();
try {
// create FileInputStream object
fin = new FileInputStream(file);
// Read bytes of data from this input stream
while((ch = fin.read()) != -1) {
sb.append((char)ch);
}
System.out.println("File content: " + sb);
}
catch (FileNotFoundException e) {
System.out.println("File not found" + e);
}
catch (IOException ioe) {
System.out.println("Exception while reading file " + ioe);
}
finally {
// close the stream using close method
try {
if (fin != null) {
fin.close();
}
}
catch (IOException ioe) {
System.out.println("Error while closing stream: " + ioe);
}
}
}
}
This was an example of how to read a File with a FileInputStream in Java.
