I denne opplæringen vil vi lære om Java FileReader og metodene ved hjelp av eksempler.
Den FileReaderklassen av java.iopakken kan brukes til å lese data (i tegn) fra filer.
Det utvider InputSreamReaderklassen.

Før du lærer om FileReader, må du sørge for at du vet om Java-filen.
Lag en FileReader
For å opprette en filleser må vi først importere java.io.FileReaderpakken. Når vi har importert pakken, kan du lage filleseren her.
1. Bruke navnet på filen
 FileReader input = new FileReader(String name); 
Her har vi opprettet en filleser som vil bli koblet til filen spesifisert av navnet.
2. Bruke et objekt av filen
 FileReader input = new FileReader(File fileObj); 
Her har vi opprettet en filleser som vil bli koblet til filen spesifisert av objektet til filen.
I eksemplet ovenfor lagres dataene i filen ved hjelp av standard tegnkoding.
Siden Java 11 kan vi imidlertid også spesifisere typen koding ( UTF-8 eller UTF-16 ) i filen.
 FileReader input = new FileReader(String file, Charset cs); 
Her har vi brukt Charsetklassen til å spesifisere tegnkodingen til filleseren.
Metoder for FileReader
Den FileReaderklasse gir implementeringer for forskjellige metoder for å medføre i Readerklassen.
les () Metode
read()- leser et enkelt tegn fra leserenread(char() array)- leser tegnene fra leseren og lagrer i den angitte matrisenread(char() array, int start, int length)- leser antall tegn som er like lange fra leseren og lagrer i den angitte matrisen fra posisjonsstart
Anta for eksempel at vi har en fil som heter input.txt med følgende innhold.
 This is a line of text inside the file. 
La oss prøve å lese filen ved hjelp av 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(); ) ) ) 
Produksjon
Data i filen: Dette er en tekstlinje i filen.
I eksemplet ovenfor har vi opprettet en filleser som heter input. Filleseren er koblet til filen input.txt .
 FileInputStream input = new FileInputStream("input.txt"); 
For å lese data fra filen har vi brukt read()metoden.
getEncoding () Metode
Den getEncoding()metode kan brukes for å få den type koding som brukes til å lagre data i filen. For eksempel,
 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(); ) ) ) 
Produksjon
Tegnkodingen av input1: Cp1252 Tegnkodingen av input2: UTF8
I eksemplet ovenfor har vi opprettet 2 fillesere kalt input1 og input2.
- input1 spesifiserer ikke tegnkodingen. Derfor 
getEncoding()returnerer metoden standard tegnkoding. - input2 spesifiserer tegnkodingen, UTF8 . Derfor 
getEncoding()returnerer metoden den spesifiserte tegnkodingen. 
Merk : Vi har brukt Charset.forName()metoden til å spesifisere typen tegnkoding. For å lære mer, besøk Java Charset (offisiell Java-dokumentasjon).
lukk () Metode
For å lukke filleseren kan vi bruke close()metoden. Når close()metoden er kalt, kan vi ikke bruke leseren til å lese dataene.
Andre metoder for FileReader
| Metode | Beskrivelse | 
|---|---|
ready() |  sjekker om filleseren er klar til å bli lest | 
mark() |  merk posisjonen i filleseren som data er lest opp til | 
reset() |  returnerer kontrollen til det punktet i leseren der merket ble satt | 
For å lære mer, besøk Java FileReader (offisiell Java-dokumentasjon).








