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