V tej vadnici bomo s pomočjo primera spoznali Java Reader, njegove podrazrede in metode.
ReaderRazred java.iopaketa je abstraktna nadrazreda, ki predstavlja tok znakov.
Ker Readerje abstraktni razred, sam po sebi ni koristen. Vendar lahko njegove podrazrede uporabljamo za branje podatkov.
Podrazredi bralca
Za uporabo funkcionalnosti Readerlahko uporabimo njegove podrazrede. Nekateri med njimi so:
- BufferedReader
 - InputStreamReader
 - FileReader
 - StringReader
 

O vseh teh podrazredih bomo izvedeli v naslednji vadnici.
Ustvari bralnik
Če želite ustvariti a Reader, moramo najprej uvoziti java.io.Readerpaket. Ko uvozimo paket, tukaj je opisano, kako lahko ustvarimo bralnik.
 // Creates a Reader Reader input = new FileReader(); 
Tu smo ustvarili bralnik, ki uporablja FileReaderrazred. To je zato, ker Readerje abstraktni razred. Zato ne moremo ustvariti predmeta Reader.
Opomba : Bralnike lahko ustvarjamo tudi iz drugih podrazredov Reader.
Metode bralca
ReaderRazred določa različne metode, ki jih izvajajo njegove podrazrede. Tu je nekaj najpogosteje uporabljenih metod:
ready()- preveri, ali je bralnik pripravljen za branjeread(char() array)- bere znake iz toka in shrani v določeno matrikoread(char() array, int start, int length)- iz toka prebere število znakov, enako dolžini, in shrani v določeno polje od začetkamark()- označuje položaj v toku, do katerega so bili prebrani podatkireset()- vrne kontrolnik na točko v toku, kjer je nastavljena oznakaskip()- zavrže določeno število znakov iz toka
Primer: Bralnik, ki uporablja FileReader
Tukaj je opisano, kako lahko izvedemo Readeruporabo FileReaderrazreda.
Recimo, da imamo datoteko z imenom input.txt z naslednjo vsebino.
 This is a line of text inside the file. 
Poskusimo prebrati to datoteko z uporabo FileReader(podrazred 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(); ) ) ) 
Izhod
Ali so v toku podatki? true Podatki v toku: To je vrstica besedila znotraj datoteke.
V zgornjem primeru smo ustvarili bralnik, ki uporablja FileReaderrazred. Čitalnik je povezan z datoteko input.txt .
 Reader input = new FileReader("input.txt"); 
Za branje podatkov iz datoteke input.txt smo uvedli te metode.
 input.read(); // to read data from the reader input.close(); // to close the reader 
Če želite izvedeti več, obiščite Java Reader (uradna dokumentacija Java).








