Dalam tutorial ini, kita akan belajar mengenai Java Reader, subkelasnya dan kaedahnya dengan bantuan contoh.
The Reader
kelas daripada java.io
pakej adalah superclass abstrak yang mewakili aliran watak-watak.
Oleh kerana Reader
kelas abstrak, ia tidak berguna dengan sendirinya. Walau bagaimanapun, subkelasnya dapat digunakan untuk membaca data.
Subkelas Pembaca
Untuk menggunakan fungsi Reader
, kita dapat menggunakan subkelasnya. Sebahagian daripadanya adalah:
- BufferedReader
- InputStreamReader
- Pembaca Fail
- StringReader
Kami akan belajar mengenai semua subkelas ini dalam tutorial seterusnya.
Buat Pembaca
Untuk membuat Reader
, kita mesti mengimport java.io.Reader
pakej terlebih dahulu. Sebaik sahaja kami mengimport pakej, berikut adalah bagaimana kita dapat membuat pembaca.
// Creates a Reader Reader input = new FileReader();
Di sini, kami telah membuat pembaca menggunakan FileReader
kelas. Ini kerana Reader
merupakan kelas abstrak. Oleh itu kita tidak dapat membuat objek Reader
.
Catatan : Kami juga boleh membuat pembaca dari subkelas lain dari Reader
.
Kaedah Pembaca
The Reader
kelas menyediakan kaedah yang berbeza yang dilaksanakan oleh subkelasnya. Berikut adalah beberapa kaedah yang biasa digunakan:
ready()
- memeriksa apakah pembaca sudah siap dibacaread(char() array)
- membaca watak dari aliran dan menyimpan dalam susunan yang ditentukanread(char() array, int start, int length)
- membaca bilangan watak yang sama dengan panjang dari aliran dan menyimpan dalam susunan yang ditentukan bermula dari awalmark()
- menandakan kedudukan dalam aliran sehingga data telah dibacareset()
- mengembalikan kawalan ke titik dalam aliran di mana tanda ditetapkanskip()
- membuang bilangan watak yang ditentukan dari aliran
Contoh: Pembaca Menggunakan FileReader
Inilah cara kami melaksanakan dengan Reader
menggunakan FileReader
kelas.
Katakan kita mempunyai fail bernama input.txt dengan kandungan berikut.
This is a line of text inside the file.
Mari cuba baca fail ini menggunakan FileReader
(subkelas dari 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(); ) ) )
Pengeluaran
Adakah terdapat data dalam aliran? benar data dalam aliran: Ini adalah sebaris teks di dalam fail.
Dalam contoh di atas, kami telah membuat pembaca menggunakan FileReader
kelas. Pembaca dihubungkan dengan input.txt fail .
Reader input = new FileReader("input.txt");
Untuk membaca data dari file input.txt , kami telah menerapkan kaedah ini.
input.read(); // to read data from the reader input.close(); // to close the reader
Untuk mengetahui lebih lanjut, kunjungi Java Reader (dokumentasi Java rasmi).