Kako prebrati datoteko v Javi?
Java ponuja več mehanizmov za branje iz datoteke. Najbolj uporaben paket, ki je za to na voljo, je java.io.Reader. Ta razred vsebuje razred Java BufferedReader pod paketom java.io.BufferedReader
Kaj je BufferedReader v Javi?
BufferedReader je razred Java, ki bere besedilo iz vhodnega toka (kot je datoteka) z medpomnjenjem znakov, ki brez težav bere znake, polja ali vrstice. Na splošno vsaka zahteva za branje, ki jo naredi Reader, povzroči, da se izvede ustrezna zahteva za branje osnovnega znaka ali bajtnega toka.
Zato je priporočljivo, da BufferedReader zavijete v Javo okoli katerega koli bralnika, katerega branje () je lahko drago, na primer java FileReaders in InputStreamReaders. Tipična uporaba bi vključevala posredovanje poti do datoteke BufferedReader v Javi, kot sledi:
objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));//Assuming you have a text file in D drive
To v bistvu naloži vašo datoteko v objReader. Zdaj boste morali prebrati vsebino datoteke in jo natisniti.
Zanka while v spodnji kodi bo datoteko brala, dokler ne pride do konca datoteke
while ((strCurrentLine = objReader.readLine()) != null) {System.out.println(strCurrentLine);}
strCurrentLine bere trenutno vrstico in funkcija Java readLine objReader.readLine () vrne niz. Zato se bo zanka ponavljala, dokler ne bo nič.
Primer BufferedReader:
Spodaj je koda primera Java BufferedReader, ki prikazuje popolno izvedbo:
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();}}}}
Opomba:
Zgornja koda ima nekaj zelo pomembnih postopkov, zlasti v zadnjem bloku kode.
Ta koda bo zagotovila, da se upravljanje pomnilnika izvaja učinkovito in da se pokliče metoda objReader.close (), ki sprosti pomnilnik.
Primer BufferedReader JDK7:
Spodaj je primer datotek Java Read Files z uporabo razreda 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();}}}