package example8_3_FileOpening; import java.io.*; import java.nio.charset.Charset; public class OpeningTextFileExamples { public static void main(String[] args) { // Ways to call a method on a newly-constructed object // 1 new OpeningTextFileExamples().example(); // // 2 // OpeningTextFileExamples example2 = new OpeningTextFileExamples() // example2.example(); } public void example() { // Ways to open a text file // All of them throw a FileNotFoundException from the constructor that creates the FileReader or // FileInputStream. try { // 1 File file1 = new File("D:\\MyDocs\\Desktop\\Example.txt"); Reader reader1 = new FileReader(file1); // 2 Reader reader2 = new FileReader("D:\\MyDocs\\Desktop\\Example.txt"); // 3 BufferedReader reader3 = new BufferedReader(new FileReader("D:\\MyDocs\\Desktop\\Example.txt")); // reader3.readeLine(); // BufferedReader provides this. // 4 String filename4 = "D:\\MyDocs\\Desktop\\Example.txt"; BufferedReader reader4 = new BufferedReader( new FileReader(filename4)); // 5 String filename5 = "D:\\MyDocs\\Desktop\\Example.txt"; Reader reader5 = new InputStreamReader( new FileInputStream(filename5), Charset.forName("utf-16")); // 6 String filename6 = "D:\\MyDocs\\Desktop\\Example.txt"; BufferedReader reader6 = new BufferedReader(new InputStreamReader( new FileInputStream(filename6), Charset.forName("utf-16") )); // 7 String filename7 = "D:\\MyDocs\\Desktop\\Example.txt"; File file7 = new File(filename7); InputStream inputStream7 = new FileInputStream(file7); Reader reader7 = new InputStreamReader(inputStream7, Charset.forName("utf-16")); BufferedReader bufferedReader7 = new BufferedReader(reader7); // 8 String filename8 = "D:\\MyDocs\\Desktop\\Example.txt"; BufferedReader bufferedReader8 = myOpenFile8(filename8); // 9 // Make your own! This list is far from exhaustive! } catch (FileNotFoundException e) { System.err.println("Warning: Could not find file."); } } private static BufferedReader myOpenFile8(String filename) throws FileNotFoundException { File file7 = new File(filename); InputStream inputStream7 = new FileInputStream(file7); Reader reader7 = new InputStreamReader(inputStream7, Charset.forName("utf-16")); // 8.1 return new BufferedReader(reader7); // 8.2 // BufferedReader bufferedReader7 = new BufferedReader(reader7); // return bufferedReader7; } }