I am confused when should I use the combination of FileReader
with BufferedReader
and when to use FileInputStream
for reading a file (and outputting to the log)?
/**
* Created by mona on 3/26/16.
*/
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.BufferedReader;
public class FileExample {
public static void main (String[] args) throws java.io.IOException {
File newFile = new File("tweet.txt");
FileWriter fileWriter = new FileWriter(newFile);
fileWriter.write("Mona Jalal");
fileWriter.append("\nMona Mona");
fileWriter.close();
/*FileReader fileReader = new FileReader(newFile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
fileReader.close();
bufferedReader.close();
*/
FileInputStream fis = new FileInputStream(newFile);
System.out.println("fis");
System.out.println(fis.read()); //prints 77
int content;
while ((content=fis.read())!=-1){
System.out.print((char) content);
}
fis.close();
}
}
I am using Java 8
.