Java FileReader (cu exemple)

În acest tutorial, vom afla despre Java FileReader și metodele sale cu ajutorul unor exemple.

FileReaderClasa a java.iopachetului poate fi utilizat pentru a citi datele (în caractere) din fișiere.

Extinde InputSreamReaderclasa.

Înainte de a afla FileReader, asigurați-vă că știți despre fișierul Java.

Creați un FileReader

Pentru a crea un cititor de fișiere, trebuie mai java.io.FileReaderîntâi să importăm pachetul. Odată ce am importat pachetul, iată cum putem crea cititorul de fișiere.

1. Folosind numele fișierului

 FileReader input = new FileReader(String name); 

Aici, am creat un cititor de fișiere care va fi legat de fișierul specificat de nume.

2. Utilizarea unui obiect al fișierului

 FileReader input = new FileReader(File fileObj); 

Aici, am creat un cititor de fișiere care va fi legat de fișierul specificat de obiectul fișierului.

În exemplul de mai sus, datele din fișier sunt stocate utilizând o codificare implicită a caracterelor.

Cu toate acestea, din Java 11 putem specifica și tipul de codificare a caracterelor ( UTF-8 sau UTF-16 ) în fișier.

 FileReader input = new FileReader(String file, Charset cs); 

Aici, am folosit Charsetclasa pentru a specifica codarea caracterelor cititorului de fișiere.

Metode de FileReader

FileReaderClasa oferă implementări pentru diferite metode prezintă în Readerclasă.

read () Metodă

  • read() - citește un singur personaj de la cititor
  • read(char() array) - citește caracterele din cititor și stochează în matricea specificată
  • read(char() array, int start, int length) - citește numărul de caractere egal cu lungimea de la cititor și stochează în matricea specificată începând de la începutul poziției

De exemplu, să presupunem că avem un fișier numit input.txt cu următorul conținut.

 This is a line of text inside the file. 

Să încercăm să citim fișierul folosind FileReader.

 import java.io.FileReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a reader using the FileReader FileReader input = new FileReader("input.txt"); // 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(); ) ) ) 

Ieșire

 Date din fișier: Aceasta este o linie de text din interiorul fișierului. 

În exemplul de mai sus, am creat un cititor de fișiere numit input. Cititorul de fișiere este legat de fișierul input.txt .

 FileInputStream input = new FileInputStream("input.txt"); 

Pentru a citi datele din fișier, am folosit read()metoda.

Metoda getEncoding ()

getEncoding()Metoda poate fi utilizată pentru a obține tipul de codificare care este utilizat pentru a stoca date în fișierul. De exemplu,

 import java.io.FileReader; import java.nio.charset.Charset; class Main ( public static void main(String() args) ( try ( // Creates a FileReader with default encoding FileReader input1 = new FileReader("input.txt"); // Creates a FileReader specifying the encoding FileReader input2 = new FileReader("input.txt", Charset.forName("UTF8")); // Returns the character encoding of the file reader System.out.println("Character encoding of input1: " + input1.getEncoding()); System.out.println("Character encoding of input2: " + input2.getEncoding()); // Closes the reader input1.close(); input2.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Ieșire

 Codificarea caracterelor intrării1: Cp1252 Codificarea caracterelor intrării2: UTF8 

În exemplul de mai sus, am creat 2 cititoare de fișiere denumite input1 și input2.

  • input1 nu specifică codarea caracterelor. Prin urmare, getEncoding()metoda returnează codarea implicită a caracterelor.
  • input2 specifică codarea caracterelor, UTF8 . Prin urmare, getEncoding()metoda returnează codificarea caracterelor specificate.

Notă : Am folosit Charset.forName()metoda pentru a specifica tipul de codificare a caracterelor. Pentru a afla mai multe, vizitați Java Charset (documentație oficială Java).

close () Metoda

Pentru a închide cititorul de fișiere, putem folosi close()metoda. Odată close()apelată metoda, nu putem folosi cititorul pentru a citi datele.

Alte metode de FileReader

Metodă Descriere
ready() verifică dacă cititorul de fișiere este gata de citire
mark() marcați poziția în cititorul de fișiere până la care au fost citite datele
reset() returnează controlul la punctul din cititor unde a fost setată marca

Pentru a afla mai multe, vizitați Java FileReader (documentație oficială Java).

Articole interesante...