Selles näites õpime faili sisu lugema Java erinevate klasside abil.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java failiklass
- Java puhverdatud sisendvoo klass
- Java FileReaderi klass
Näide 1: Java-programm failide lugemiseks BufferedInputStreami abil
import java.io.BufferedInputStream; import java.io.FileInputStream; class Main ( public static void main(String() args) ( try ( // Creates a FileInputStream FileInputStream file = new FileInputStream("input.txt"); // Creates a BufferedInputStream BufferedInputStream input = new BufferedInputStream(file); // Reads first byte from file int i = input .read(); while (i != -1) ( System.out.print((char) i); // Reads next byte from the file i = input.read(); ) input.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) )
Väljund
Esimene rida Teine rida Kolmas rida Neljas rida Viies rida
Ülaltoodud näites oleme BufferedInputStream
klassi kasutanud iga rea lugemiseks failist input.txt .
Märkus . Selle faili käivitamiseks peaks teie praeguses töökataloogis olema fail nimega input.txt.
Näide 2: Java-programm failide lugemiseks puhverdatud lugeja abil
import java.io.FileReader; import java.io.BufferedReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a FileReader FileReader file = new FileReader("input.txt"); // Creates a BufferedReader BufferedReader input = new BufferedReader(file); // Reads characters input.read(array); System.out.println("Data in the file: "); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
Väljund
Andmed failis: esimene rida teine rida kolmas rida neljas rida viies rida
Ülaltoodud näites oleme faili input.txt lugemiseks kasutanud klassi BufferedReader .
Näide 3: Java-programm faili lugemiseks skanneri abil
import java.io.File; import java.util.Scanner; class Main ( public static void main(String() args) ( try ( // create a new file object File file = new File("input.txt"); // create an object of Scanner // associated with the file Scanner sc = new Scanner(file); // read each line from file and print it System.out.println("Reading File Using Scanner:"); while(sc.hasNextLine()) ( System.out.println(sc.nextLine()); ) // close scanner sc.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) )
Väljund
Faili lugemine skanneri abil: esimene rida teine rida kolmas rida neljas rida viies rida
Ülaltoodud näites oleme loonud File
klassi nimega objekti fail. Seejärel lõime Scanner
failiga seotud objekti.
Siin oleme kasutanud skanneri meetodeid
- hasNextLine () - tagastab true, kui failis on järgmine rida
- nextLine () - tagastab failist kogu rea
Skanneri kohta lisateabe saamiseks külastage Java Scannerit.