Java BufferedReader: Hur man läser filen i Java med exempel

Hur man läser en fil i Java?

Java tillhandahåller flera mekanismer för att läsa från fil. Det mest användbara paketet som tillhandahålls för detta är java.io.Reader. Denna klass innehåller klassen Java BufferedReader under paketet java.io.BufferedReader

Vad är BufferedReader in Java?

BufferedReader är en Java klass för att läsa texten från en indataström (som en fil) genom att buffra tecken som sömlöst läser tecken, arrayer eller linjer. I allmänhet orsakar varje läsbegäran som görs av en läsare att en motsvarande läsbegäran görs av det underliggande tecknet eller byteströmmen.

Det är därför lämpligt att linda BufferedReader in Java runt alla läsare vars read()-operationer kan vara kostsamma, såsom java FileReaders och InputStreamReaders. En typisk användning skulle innebära att filsökvägen skickas till BufferedReader in Java enligt följande:

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

Detta laddar i princip din fil i objReader. Nu måste du iterera igenom innehållet i filen och skriva ut den.

Smakämnen medan slingan i nedanstående kod kommer att läsa filen tills den har nått slutet av filen

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

strCurrentLine läser den aktuella raden och Java readLine-funktionen objReader.readLine() returnerar en sträng. Därför kommer loopen att iterera tills den inte är null.

BufferExempel på edReader

Nedan kod är en Java BufferedReader-exempel som visar den fullständiga implementeringen:

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();
   }
  }
 }
}

Notera:

Ovanstående kod har några mycket viktiga hanteringar, särskilt i det sista blocket av koden.

Denna kod säkerställer att minneshantering görs effektivt och metoden objReader.close() anropas som frigör minnet.

BufferedReader JDK7 Exempel

Nedan är exemplet på Java Läs filer med BufferedReader-klass

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();
  }
 }
}