Dalam tutorial ini, kita akan belajar tentang Java Reader, subkelasnya dan metodenya dengan bantuan sebuah contoh.
The Reader
kelas dari java.io
paket adalah superclass abstrak yang mewakili aliran karakter.
Karena Reader
merupakan kelas abstrak, itu tidak berguna dengan sendirinya. Namun, subkelasnya dapat digunakan untuk membaca data.
Subclass dari Reader
Untuk menggunakan fungsionalitas Reader
, kita dapat menggunakan subkelasnya. Beberapa dari mereka adalah:
- BufferedReader
- InputStreamReader
- FileReader
- StringReader
Kita akan mempelajari semua subclass ini di tutorial berikutnya.
Buat Pembaca
Untuk membuat Reader
, kita harus mengimpor java.io.Reader
paketnya terlebih dahulu. Setelah kami mengimpor paket, inilah cara kami membuat pembaca.
// Creates a Reader Reader input = new FileReader();
Di sini, kami telah membuat pembaca menggunakan FileReader
kelas. Itu karena Reader
merupakan kelas abstrak. Karenanya kita tidak dapat membuat objek dari Reader
.
Catatan : Kami juga dapat membuat pembaca dari subkelas lain Reader
.
Metode Pembaca
The Reader
kelas menyediakan metode yang berbeda yang dilaksanakan oleh subclass. Berikut beberapa metode yang umum digunakan:
ready()
- memeriksa apakah pembaca siap untuk dibacaread(char() array)
- membaca karakter dari aliran dan menyimpannya dalam larik yang ditentukanread(char() array, int start, int length)
- membaca jumlah karakter yang sama dengan panjang dari aliran dan menyimpan dalam larik yang ditentukan mulai dari awalmark()
- menandai posisi dalam aliran yang datanya telah dibacareset()
- mengembalikan kontrol ke titik di aliran tempat tanda ditetapkanskip()
- membuang sejumlah karakter tertentu dari aliran
Contoh: Pembaca Menggunakan FileReader
Berikut adalah bagaimana kita dapat mengimplementasikan Reader
menggunakan FileReader
kelas.
Misalkan kita memiliki file bernama input.txt dengan konten berikut.
This is a line of text inside the file.
Mari kita coba membaca file ini menggunakan FileReader
(subclass 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(); ) ) )
Keluaran
Apakah ada data di aliran? True Data di aliran: Ini adalah baris teks di dalam file.
Dalam contoh di atas, kami telah membuat pembaca menggunakan FileReader
kelas. Pembaca terhubung dengan file input.txt .
Reader input = new FileReader("input.txt");
Untuk membaca data dari file input.txt , kami telah menerapkan metode ini.
input.read(); // to read data from the reader input.close(); // to close the reader
Untuk mempelajari lebih lanjut, kunjungi Java Reader (dokumentasi resmi Java).