Šajā piemērā mēs iemācīsimies lasīt faila saturu, izmantojot dažādas Java klases.
Lai saprastu šo piemēru, jums jāpārzina šādas Java programmēšanas tēmas:
- Java failu klase
- Java BufferedInputStream klase
- Java FileReader klase
1. piemērs: Java programma faila lasīšanai, izmantojot BufferedInputStream
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(); ) ) )
Rezultāts
Pirmā līnija Otrā līnija Trešā līnija Ceturtā līnija Piektā līnija
Iepriekš minētajā piemērā mēs izmantojām BufferedInputStream
klasi, lai nolasītu katru rindiņu no faila ar nosaukumu input.txt .
Piezīme . Lai palaistu šo failu, pašreizējā darba direktorijā jābūt failam ar nosaukumu input.txt.
2. piemērs: Java programma faila lasīšanai, izmantojot BufferedReader
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(); ) ) )
Rezultāts
Dati failā: Pirmā rinda Otrā rinda Trešā rinda Ceturtā rinda Piektā rinda
Iepriekš minētajā piemērā mēs izmantojām BufferedReader klasi, lai lasītu failu ar nosaukumu input.txt .
3. piemērs: Java programma faila lasīšanai, izmantojot skeneri
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(); ) ) )
Rezultāts
Faila lasīšana, izmantojot skeneri: pirmā rinda otrā rinda trešā rinda ceturtā rinda piektā rinda
Iepriekš minētajā piemērā mēs esam izveidojuši objektu ar File
nosaukumu nosaukums file. Pēc tam mēs izveidojām Scanner
objektu, kas saistīts ar failu.
Šeit mēs esam izmantojuši skenera metodes
- hasNextLine () - atgriež vērtību true, ja failā ir nākamā rinda
- nextLine () - atgriež visu rindiņu no faila
Lai uzzinātu vairāk par skeneri, apmeklējiet Java skeneri.