Java BufferedReader: Kako čitati datoteku na Javi s primjerom

Sadržaj:

Anonim

Kako čitati datoteku na Javi?

Java nudi nekoliko mehanizama za čitanje iz datoteke. Najkorisniji paket koji je za to predviđen je java.io.Reader. Ova klasa sadrži klasu Java BufferedReader pod paketom java.io.BufferedReader

Što je BufferedReader u Javi?

BufferedReader je Java klasa koja čita tekst iz ulaznog toka (poput datoteke) međuspremnikom znakova koji neometano čita znakove, nizove ili retke. Općenito, svaki zahtjev za čitanje napravljen od čitača uzrokuje da se odgovarajući zahtjev za čitanje napravi od temeljnog znaka ili bajt toka.

Stoga je poželjno omotati BufferedReader u Javi oko bilo kojeg čitača čije operacije čitanja () mogu biti skupe, kao što su java FileReaders i InputStreamReaders. Tipična uporaba uključivala bi prosljeđivanje puta datoteke BufferedReaderu u Javi, kako slijedi:

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

To u osnovi učitava vašu datoteku u objReader. Sada ćete morati prelistati sadržaj datoteke i ispisati je.

Petlja while u donjem kodu čitat će datoteku dok ne dođe do kraja datoteke

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

strCurrentLine čita trenutni redak, a funkcija Java readLine objReader.readLine () vraća niz. Stoga će se petlja ponavljati sve dok ne bude null.

Primjer puferiranog čitača:

Ispod koda je primjer Java BufferedReader koji prikazuje kompletnu implementaciju:

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

Bilješka:

Gornji kod ima nekoliko vrlo važnih postupaka, posebno u konačnom bloku koda.

Ovaj će kôd osigurati da se upravljanje memorijom obavlja učinkovito i da se pozove metoda objReader.close () koja oslobađa memoriju.

Primjer puferiranog čitača JDK7:

Ispod je primjer Java datoteka za čitanje pomoću klase BufferedReader

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