Reading From a Text File in Java Without Directory

In that location are many means to read a text file in java. Let'due south wait at java read text file different methods one by i.

Java read text file

java read file, java read text file

There are many ways to read a text file in java. A text file is fabricated of characters, and then we can utilize Reader classes. There are some utility classes likewise to read a text file in java.

  1. Java read text file using Files class
  2. Read text file in java using FileReader
  3. Coffee read text file using BufferedReader
  4. Using Scanner class to read text file in coffee

At present let's await at examples showing how to read a text file in java using these classes.

Java read text file using java.nio.file.Files

Nosotros can utilise Files grade to read all the contents of a file into a byte array. Files class also has a method to read all lines to a list of cord. Files grade is introduced in Coffee 7 and it's good if yous want to load all the file contents. Yous should use this method only when you are working on pocket-sized files and you need all the file contents in memory.

                          String fileName = "/Users/pankaj/source.txt"; Path path = Paths.become(fileName); byte[] bytes = Files.readAllBytes(path); List<String> allLines = Files.readAllLines(path, StandardCharsets.UTF_8);                      

Read text file in java using java.io.FileReader

You can use FileReader to go the BufferedReader then read files line by line. FileReader doesn't support encoding and works with the organization default encoding, and then information technology'south not a very efficient fashion of reading a text file in java.

                          String fileName = "/Users/pankaj/source.txt"; File file = new File(fileName); FileReader fr = new FileReader(file); BufferedReader br = new BufferedReader(fr); String line; while((line = br.readLine()) != null){     //process the line     System.out.println(line); }                      

Java read text file using java.io.BufferedReader

BufferedReader is good if you want to read file line by line and process on them. It's good for processing the big file and it supports encoding also.

BufferedReader is synchronized, so read operations on a BufferedReader can safely exist done from multiple threads. BufferedReader default buffer size is 8KB.

                          String fileName = "/Users/pankaj/source.txt"; File file = new File(fileName); FileInputStream fis = new FileInputStream(file); InputStreamReader isr = new InputStreamReader(fis, cs); BufferedReader br = new BufferedReader(isr);  String line; while((line = br.readLine()) != null){      //process the line      System.out.println(line); } br.close();                      

Using scanner to read text file in java

If y'all want to read file line by line or based on some coffee regular expression, Scanner is the class to employ.

Scanner breaks its input into tokens using a delimiter design, which by default matches whitespace. The resulting tokens may then be converted into values of different types using the various adjacent methods. The scanner class is not synchronized and hence not thread safe.

                          Path path = Paths.go(fileName); Scanner scanner = new Scanner(path); Arrangement.out.println("Read text file using Scanner"); //read line by line while(scanner.hasNextLine()){     //procedure each line     String line = scanner.nextLine();     System.out.println(line); } scanner.close();                      

Java Read File Instance

Hither is the example grade showing how to read a text file in java. The case methods are using Scanner, Files, BufferedReader with Encoding support and FileReader.

                          parcel com.journaldev.files;  import coffee.io.BufferedReader; import coffee.io.File; import coffee.io.FileInputStream; import java.io.FileReader; import coffee.io.IOException; import java.io.InputStreamReader; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.List; import coffee.util.Scanner;  public form JavaReadFile {      public static void main(String[] args) throws IOException {         Cord fileName = "/Users/pankaj/source.txt";                  //using Coffee 7 Files grade to procedure small files, get complete file information         readUsingFiles(fileName);                  //using Scanner class for large files, to read line past line         readUsingScanner(fileName);                  //read using BufferedReader, to read line by line         readUsingBufferedReader(fileName);         readUsingBufferedReaderJava7(fileName, StandardCharsets.UTF_8);         readUsingBufferedReader(fileName, StandardCharsets.UTF_8);                  //read using FileReader, no encoding support, non efficient         readUsingFileReader(fileName);     }      private static void readUsingFileReader(String fileName) throws IOException {         File file = new File(fileName);         FileReader fr = new FileReader(file);         BufferedReader br = new BufferedReader(fr);         String line;         Arrangement.out.println("Reading text file using FileReader");         while((line = br.readLine()) != null){             //process the line             Organization.out.println(line);         }         br.shut();         fr.close();              }      private static void readUsingBufferedReader(String fileName, Charset cs) throws IOException {         File file = new File(fileName);         FileInputStream fis = new FileInputStream(file);         InputStreamReader isr = new InputStreamReader(fis, cs);         BufferedReader br = new BufferedReader(isr);         Cord line;         Organisation.out.println("Read text file using InputStreamReader");         while((line = br.readLine()) != naught){             //process the line             System.out.println(line);         }         br.close();              }      individual static void readUsingBufferedReaderJava7(Cord fileName, Charset cs) throws IOException {         Path path = Paths.become(fileName);         BufferedReader br = Files.newBufferedReader(path, cs);         String line;         System.out.println("Read text file using BufferedReader Java 7 comeback");         while((line = br.readLine()) != null){             //process the line             Arrangement.out.println(line);         }         br.close();     }      private static void readUsingBufferedReader(String fileName) throws IOException {         File file = new File(fileName);         FileReader fr = new FileReader(file);         BufferedReader br = new BufferedReader(fr);         String line;         System.out.println("Read text file using BufferedReader");         while((line = br.readLine()) != cipher){             //process the line             System.out.println(line);         }         //close resources         br.close();         fr.shut();     }      private static void readUsingScanner(Cord fileName) throws IOException {         Path path = Paths.get(fileName);         Scanner scanner = new Scanner(path);         System.out.println("Read text file using Scanner");         //read line past line         while(scanner.hasNextLine()){             //process each line             String line = scanner.nextLine();             Organization.out.println(line);         }         scanner.close();     }      private static void readUsingFiles(Cord fileName) throws IOException {         Path path = Paths.get(fileName);         //read file to byte array         byte[] bytes = Files.readAllBytes(path);         System.out.println("Read text file using Files class");         //read file to String list         @SuppressWarnings("unused") 		List<String> allLines = Files.readAllLines(path, StandardCharsets.UTF_8);         System.out.println(new String(bytes));     }  }                      

The choice of using a Scanner or BufferedReader or Files to read file depends on your project requirements. For example, if you are just logging the file, yous tin use Files and BufferedReader. If you are looking to parse the file based on a delimiter, you lot should utilize Scanner class.

Before I end this tutorial, I desire to mention most RandomAccessFile. We can use this to read text file in java.

                          RandomAccessFile file = new RandomAccessFile("/Users/pankaj/Downloads/myfile.txt", "r"); String str;  while ((str = file.readLine()) != zip) { 	Organization.out.println(str); } file.close();                      

That'southward all for java read text file example programs.

dodgesirle1990.blogspot.com

Source: https://www.journaldev.com/867/java-read-text-file

0 Response to "Reading From a Text File in Java Without Directory"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel