Šajā apmācībā mēs ar piemēra palīdzību uzzināsim par Java Reader, tā apakšklasēm un metodēm.
Iepakojuma Reader
klase java.io
ir abstrakta superklase, kas attēlo rakstzīmju plūsmu.
Tā kā Reader
tā ir abstrakta klase, tā pati par sevi nav noderīga. Tomēr tā apakšklases var izmantot datu lasīšanai.
Lasītāja apakšklases
Lai izmantotu vietnes funkcionalitāti Reader
, mēs varam izmantot tās apakšklases. Daži no tiem ir:
- BufferedReader
- InputStreamReader
- FileReader
- StringReader
Mēs uzzināsim par visām šīm apakšklasēm nākamajā apmācībā.
Izveidojiet lasītāju
Lai izveidotu a Reader
, mums vispirms ir jāimportē java.io.Reader
pakete. Kad pakotne ir importēta, lasītāju var izveidot šādi.
// Creates a Reader Reader input = new FileReader();
Šeit mēs esam izveidojuši lasītāju, izmantojot FileReader
klasi. Tas ir tāpēc, ka Reader
tā ir abstrakta klase. Tādējādi mēs nevaram izveidot objektu Reader
.
Piezīme . Mēs varam izveidot lasītājus arī no citām Reader
.
Lasītāja metodes
Reader
Klase nodrošina dažādas metodes, kas tiek īstenoti ar tās apakšklases. Šeit ir dažas no visbiežāk izmantotajām metodēm:
ready()
- pārbauda, vai lasītājs ir gatavs lasītread(char() array)
- nolasa rakstzīmes no straumes un saglabā norādītajā masīvāread(char() array, int start, int length)
- no straumes nolasa rakstzīmju skaitu, kas vienāds ar garumu, un glabā norādītajā masīvā, sākot no sākumamark()
- iezīmē pozīciju straumē, līdz kurai dati ir nolasītireset()
- atgriež vadību straumes punktā, kur ir iestatīta atzīmeskip()
- izmet no straumes norādīto rakstzīmju skaitu
Piemērs: Lasītājs, izmantojot FileReader
Lūk, kā mēs varam ieviest, Reader
izmantojot FileReader
klasi.
Pieņemsim, ka mums ir fails ar nosaukumu input.txt ar šādu saturu.
This is a line of text inside the file.
Mēģināsim izlasīt šo failu, izmantojot FileReader
(apakšklasi 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(); ) ) )
Rezultāts
Vai straumē ir dati? true Dati straumē: šī ir teksta rindiņa faila iekšpusē.
Iepriekš minētajā piemērā mēs esam izveidojuši lasītāju, izmantojot FileReader
klasi. Lasītājs ir saistīts ar failu input.txt .
Reader input = new FileReader("input.txt");
Lai lasītu datus no faila input.txt , mēs esam ieviesuši šīs metodes.
input.read(); // to read data from the reader input.close(); // to close the reader
Lai uzzinātu vairāk, apmeklējiet Java Reader (oficiālā Java dokumentācija).