Java BufferedReader: Jak czytać plik w Java z Przykładem
Jak odczytać plik w Java?
Java zapewnia kilka mechanizmów do odczytu z pliku. Najbardziej użytecznym pakietem, który jest do tego przeznaczony, jest java.io.Reader. Ta klasa zawiera klasę Java BufferedReader w pakiecie java.io.BufferedReader
Czym jest BufferedReader w Java?
BufferedReader jest Java klasa do odczytu tekstu ze strumienia wejściowego (takiego jak plik) poprzez buforowanie znaków, które płynnie odczytuje znaki, tablice lub linie. Zasadniczo każde żądanie odczytu wykonane z Czytelnika powoduje wykonanie odpowiadającego mu żądania odczytu z podstawowego strumienia znaków lub bajtów.
Dlatego zaleca się owinięcie BufferedReader w Java wokół dowolnego Readera, którego operacje read() mogą być kosztowne, takie jak java FileReaders i InputStreamReaders. Typowe użycie obejmowałoby przekazanie ścieżki pliku do BufferedReader w Java w sposób następujący:
objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt")); //Assuming you have a text file in D drive
Zasadniczo ładuje to plik do objReadera. Teraz będziesz musiał przejrzeć zawartość pliku i wydrukować go.
pętla while w poniższym kodzie będzie czytać plik, aż dotrze do końca pliku
while ((strCurrentLine = objReader.readLine()) != null) { System.out.println(strCurrentLine); }
strCurrentLine odczytuje bieżącą linię i Java Funkcja readLine objReader.readLine() zwraca ciąg znaków. W związku z tym pętla będzie iterować, dopóki nie osiągnie wartości null.
BufferPrzykład edReadera
Poniżej znajduje się kod Java BufferPrzykład edReadera pokazujący kompletną implementację:
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(); } } } }
Uwaga:
Powyższy kod zawiera kilka bardzo ważnych operacji, szczególnie w ostatnim bloku kodu.
Ten kod zapewni, że zarządzanie pamięcią odbywa się wydajnie i wywoływana jest metoda objReader.close(), która zwalnia pamięć.
BufferPrzykład edReadera JDK7
Poniżej znajduje się przykład Java Czytaj pliki za pomocą Bufferklasa edReadera
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(); } } }