Kaip skaityti failą „Java“?
„Java“ pateikia kelis mechanizmus, kuriuos galima skaityti iš „File“. Naudingiausias tam skirtas paketas yra java.io.Reader. Šioje klasėje yra „Java Java BufferedReader“ paketas java.io.BufferedReader
Kas yra „BufferedReader“ „Java“?
„BufferedReader“ yra „Java“ klasė, skirta skaityti tekstą iš įvesties srauto (kaip ir failas) buferio ženklais, kurie sklandžiai skaito simbolius, masyvus ar eilutes. Apskritai, kiekviena skaitytojo pateikta užklausa sukelia atitinkamą pagrindinio simbolio ar baitų srauto skaitymo užklausą.
Todėl patartina „BufferedReader“ apjungti „Java“ aplink bet kurį „Reader“, kurio skaitymo () operacijos gali būti brangios, pvz., „Java FileReaders“ ir „InputStreamReaders“. Įprastas naudojimas reiškia failo kelio perdavimą „BufferedReader“ sistemoje „Java“ taip:
objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));//Assuming you have a text file in D drive
Iš esmės tai įkelia failą į objReader. Dabar turėsite pakartoti failo turinį ir jį atsispausdinti.
Žemiau esančio kodo „while“ kilpa nuskaitys failą, kol jis pasieks failo pabaigą
while ((strCurrentLine = objReader.readLine()) != null) {System.out.println(strCurrentLine);}
„strCurrentLine“ nuskaito dabartinę eilutę, o „Java readLine“ funkcija objReader.readLine () pateikia eilutę. Vadinasi, kilpa kartosis tol, kol ji nebus nulinė.
„BufferedReader“ pavyzdys:
Žemiau yra „Java BufferedReader“ pavyzdys, parodantis visišką diegimą:
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();}}}}
Pastaba:
Pirmiau pateiktame kode yra keletas labai svarbių tvarkymo būdų, ypač paskutiniame kodo bloke.
Šis kodas užtikrins, kad atminties valdymas būtų atliekamas efektyviai, o iškviečiamas metodas objReader.close (), kuris atlaisvina atmintį.
„BufferedReader JDK7“ pavyzdys:
Žemiau pateikiamas „Java“ skaitytų failų, naudojant „BufferedReader“ klasę, pavyzdys
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();}}}