Java BufferedReader: как прочитать файл в Java с примером

Как прочитать файл в Java?

Java предоставляет несколько механизмов для чтения из File. Самый полезный пакет, который предоставляется для этого, — это java.io.Reader. Этот класс содержит класс Java BufferedReader в пакете java.io.BufferЭдРидер

Что такое BufferedReader в Java?

BufferЭдРидер - это Java класс для чтения текста из входного потока (например, файла) путем буферизации символов, который бесшовно считывает символы, массивы или строки. В общем, каждый запрос на чтение, сделанный Reader, вызывает соответствующий запрос на чтение базового потока символов или байтов.

Поэтому желательно завернуть BufferedReader в Java вокруг любого Reader, чьи операции read() могут быть затратными, например, FileReaders и InputStreamReaders. Типичное использование будет включать передачу пути к файлу BufferedReader в Java следующим образом:

objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));
//Assuming you have a text file in D drive

По сути, это загружает ваш файл в objReader. Теперь вам нужно будет перебрать содержимое файла и распечатать его.

Территория в то время как цикл в приведенном ниже коде будет читать файл до тех пор, пока он не достигнет конца файла

while ((strCurrentLine = objReader.readLine()) != null) {
    System.out.println(strCurrentLine);
}

strCurrentLine считывает текущую строку и Java Функция readLine objReader.readLine() возвращает строку. Следовательно, цикл будет повторяться до тех пор, пока не станет нулевым.

BufferПример edReader

Ниже приведен код Java BufferПример edReader, который показывает полную реализацию:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadFileExample {

 public static void main(String[] args) {
  BufferedReader objReader = null;
  try {
   String strCurrentLine;

   objReader = new BufferedReader(new FileReader("D:\\DukesDiary.txt"));

   while ((strCurrentLine = objReader.readLine()) != null) {

    System.out.println(strCurrentLine);
   }

  } catch (IOException e) {

   e.printStackTrace();

  } finally {

   try {
    if (objReader != null)
     objReader.close();
   } catch (IOException ex) {
    ex.printStackTrace();
   }
  }
 }
}

Примечание:

В приведенном выше коде есть несколько очень важных операций, особенно в блоке кодаfinally.

Этот код гарантирует, что управление памятью выполняется эффективно, и вызывается метод objReader.close(), который освобождает память.

BufferПример edReader JDK7

Ниже приведен пример Java Чтение файлов с помощью Bufferкласс edReader

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadFileExample_jdk7 {

 private static final String FILENAME = "D:\\DukesDiary.txt";

 public static void main(String[] args) {

  try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {

   String strCurrentLine;

   while ((strCurrentLine = br.readLine()) != null) {
    System.out.println(strCurrentLine);
   }

  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}