Hvordan leser jeg en fil i Java?
Java har flere mekanismer å lese fra File. Den mest nyttige pakken som er gitt for dette er java.io.Reader. Denne klassen inneholder Class Java BufferedReader under pakken java.io.BufferedReader
Hva er BufferedReader i Java?
BufferedReader er en Java-klasse som leser teksten fra en inngangsstrøm (som en fil) ved å buffere tegn som sømløst leser tegn, matriser eller linjer. Generelt fører hver leseforespørsel fra en leser til at en tilsvarende leseforespørsel gjøres av den underliggende karakteren eller byte-strømmen.
Det tilrådes derfor å pakke BufferedReader i Java rundt alle lesere hvis read () -operasjoner kan være kostbare, for eksempel java FileReaders og InputStreamReaders. En typisk bruk vil innebære at filstien sendes til BufferedReader i Java som følger:
objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));//Assuming you have a text file in D drive
Dette laster i utgangspunktet filen din i objReader. Nå må du iterere gjennom innholdet i filen og skrive den ut.
Mens løkken i koden nedenfor vil lese filen til den har nådd slutten av filen
while ((strCurrentLine = objReader.readLine()) != null) {System.out.println(strCurrentLine);}
strCurrentLine leser den nåværende linjen, og Java readLine-funksjonen objReader.readLine () returnerer en streng. Derfor vil sløyfen gjentas til den ikke er null.
BufferedReader Eksempel:
Nedenfor er koden et Java BufferedReader-eksempel som viser fullstendig implementering:
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();}}}}
Merk:
Ovennevnte kode har noen veldig viktige håndteringer, spesielt i den endelige koden.
Denne koden vil sikre at minnestyring gjøres effektivt og metoden objReader.close () kalles som frigjør minnet.
BufferedReader JDK7 Eksempel:
Nedenfor er eksemplet på Java Read Files som bruker BufferedReader-klassen
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();}}}