Java Reader (med eksempel)

I denne opplæringen vil vi lære om Java Reader, dens underklasser og dens metoder ved hjelp av et eksempel.

Den Readerklasse av java.iopakken er en abstrakt super som representerer en strøm av tegn.

Siden Readerer en abstrakt klasse, er den ikke nyttig i seg selv. Imidlertid kan underklassene brukes til å lese data.

Underklasser av Reader

For å kunne bruke funksjonaliteten til Reader, kan vi bruke underklassene. Noen av dem er:

  • BufferedReader
  • InputStreamReader
  • FileReader
  • StringReader

Vi vil lære om alle disse underklassene i neste opplæring.

Lag en leser

For å opprette en Reader, må vi importere java.io.Readerpakken først. Når vi har importert pakken, kan du lage leseren her.

 // Creates a Reader Reader input = new FileReader(); 

Her har vi laget en leser ved hjelp av FileReaderklassen. Det er fordi det Readerer en abstrakt klasse. Derfor kan vi ikke skape et objekt av Reader.

Merk : Vi kan også lage lesere fra andre underklasser av Reader.

Metoder for leser

Den Readerklasse gir forskjellige metoder som er implementert ved dens subklasser. Her er noen av de mest brukte metodene:

  • ready() - sjekker om leseren er klar til å bli lest
  • read(char() array) - leser tegnene fra strømmen og lagrer i den angitte matrisen
  • read(char() array, int start, int length) - leser antall tegn som er like lange fra strømmen og lagrer i den angitte matrisen fra start
  • mark() - markerer posisjonen i strømmen som data er lest opp for
  • reset() - returnerer kontrollen til punktet i strømmen der merket er satt
  • skip() - forkaster det angitte antall tegn fra strømmen

Eksempel: Leser ved hjelp av FileReader

Slik kan vi implementere Readerved hjelp av FileReaderklassen.

Anta 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 denne filen ved hjelp av FileReader(en underklasse av Reader).

 import java.io.Reader; 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 Reader input = new FileReader("input.txt"); // Checks if reader is ready System.out.println("Is there data in the stream? " + input.ready()); // Reads characters input.read(array); System.out.println("Data in the stream:"); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Produksjon

Er det data i strømmen? true Data in the stream: Dette er en tekstlinje i filen.

I eksemplet ovenfor har vi opprettet en leser ved hjelp av FileReaderklassen. Leseren er koblet til filen input.txt .

 Reader input = new FileReader("input.txt"); 

For å lese data fra input.txt- filen har vi implementert disse metodene.

 input.read(); // to read data from the reader input.close(); // to close the reader 

For å lære mer, besøk Java Reader (offisiell Java-dokumentasjon).

Interessante artikler...