Java Reader (met voorbeeld)

In deze tutorial leren we met behulp van een voorbeeld over Java Reader, de subklassen en de methoden ervan.

De Readerklasse van het java.iopakket is een abstracte superklasse die een stroom tekens vertegenwoordigt.

Omdat het Readereen abstracte klasse is, is deze op zichzelf niet bruikbaar. De subklassen kunnen echter worden gebruikt om gegevens te lezen.

Subklassen van Reader

Om de functionaliteit van te gebruiken Reader, kunnen we de subklassen ervan gebruiken. Sommige ervan zijn:

  • BufferedReader
  • InputStreamReader
  • FileReader
  • StringReader

We zullen over al deze subklassen leren in de volgende tutorial.

Maak een Reader

Om een ​​te maken Reader, moeten we eerst het java.io.Readerpakket importeren . Zodra we het pakket hebben geïmporteerd, kunnen we als volgt de reader maken.

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

Hier hebben we een lezer gemaakt met behulp van de FileReaderklas. Het is omdat het Readereen abstracte klasse is. Daarom kunnen we er geen object van maken Reader.

Opmerking : we kunnen ook lezers maken uit andere subklassen van Reader.

Methoden van Reader

De Readerklasse biedt verschillende methoden die worden geïmplementeerd door de subklassen. Hier zijn enkele van de meest gebruikte methoden:

  • ready() - controleert of de lezer klaar is om gelezen te worden
  • read(char() array) - leest de karakters uit de stream en slaat ze op in de gespecificeerde array
  • read(char() array, int start, int length) - leest het aantal tekens dat gelijk is aan de lengte van de stream en slaat het vanaf het begin op in de opgegeven array
  • mark() - markeert de positie in de stream tot waar de gegevens zijn gelezen
  • reset() - zet de besturing terug naar het punt in de stream waar de markering is geplaatst
  • skip() - verwijdert het opgegeven aantal tekens uit de stream

Voorbeeld: Reader met FileReader

Hier is hoe we kunnen implementeren Readermet behulp van de FileReaderklasse.

Stel dat we een bestand hebben met de naam input.txt met de volgende inhoud.

 This is a line of text inside the file. 

Laten we proberen dit bestand te lezen met FileReader(een subklasse van 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(); ) ) ) 

Uitvoer

Zijn er gegevens in de stream? true Data in the stream: Dit is een regel tekst in het bestand.

In het bovenstaande voorbeeld hebben we een lezer gemaakt met behulp van de FileReaderklasse. De lezer is gekoppeld aan het bestand input.txt .

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

Om gegevens uit het input.txt- bestand te lezen , hebben we deze methoden geïmplementeerd.

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

Ga voor meer informatie naar Java Reader (officiële Java-documentatie).

Interessante artikelen...