Bagaimana Cara Kerja Java InputStream

Bagaimana Cara Kerja Java Inputstream



Java memungkinkan pengembang untuk bekerja dengan file. Dalam kasus seperti itu, “ InputStream ” Kelas mulai berlaku yang membantu membaca konten file yang ditentukan bersama dengan menganalisis byte yang terkandung. Ini menghasilkan mengatasi masalah memori dan juga mengembalikan konten file selektif sesuai kebutuhan secara efisien.

Tulisan ini akan menguraikan cara kerja “InputStream” di Java.







Bagaimana Cara Kerja Java InputStream?

Kelas 'InputStream' dari ' java.io ” paket sesuai dengan superclass abstrak yang mengembalikan aliran input yang terdiri dari byte terhadap file yang ditentukan.



Subclass dari InputStream

Untuk menerapkan fungsionalitas 'InputStream', subkelas berikut dapat digunakan:



    • FileInputStream
    • ObjectInputStream
    • ByteArrayInputStream

Subclass ini memperluas kelas 'InputStream'.





Metode InputStream

Kelas 'InputStream' berisi metode berbeda yang diterapkan oleh subkelasnya. Berikut adalah beberapa metode yang paling umum digunakan:

Metode Kegunaan
membaca() Itu membaca satu byte data dari input stream.



baca(byte[] larik) Itu juga membaca byte dari aliran dan menyimpannya di array target.

melewati() Metode ini melompati/menghilangkan jumlah byte tertentu dari aliran input.

tersedia() Ini memberikan byte yang terkandung dalam aliran input.
mengatur ulang() Ini memberikan akses ke titik aliran di mana tanda itu ditetapkan.

tanda() Metode ini menandai posisi di aliran sampai data yang telah dibaca.

markSupported() Ini menganalisis apakah metode “mark()” dan “reset()” didukung/kompatibel dalam aliran.


Sebelum menuju ke contoh, impor paket berikut untuk bekerja dengan “InputStream” dan subkelasnya:

impor java.io.FileInputStream;
import java.io.InputStream;


Contoh: Kerja InputStream di Jawa

Contoh ini mengilustrasikan cara kerja 'InputStream' dengan membaca konten file melalui metode 'InputStream':

Inputstream kelas publik {
public void utama statis ( Argumen string [ ] ) {
byte [ ] diberikanarray = byte baru [ lima puluh ] ;
mencoba {
InputStream readData = FileInputStream baru ( 'readfile.txt' ) ;
System.out.println ( 'Byte dalam file ->' + bacaData.tersedia ( ) ) ;
bacaData.baca ( diberikanarray ) ;
System.out.println ( 'Baca File Data:' ) ;
String berisidata = String baru ( diberikanarray ) ;
System.out.println ( contentdata ) ;
readData.close ( ) ;
}
menangkap ( Pengecualian kecuali ) {
kecuali.getStackTrace ( ) ;
}
} }


Menurut baris kode di atas, lakukan langkah-langkah berikut:

    • Pertama, buat larik 'byte' yang dapat berisi maksimum ' lima puluh ” nilai byte dalam file baca.
    • Pada langkah selanjutnya, buat ' InputStream ” menggunakan “FileInputStream” dan mengembalikan byte yang tersedia dalam file yang ditentukan melalui “ tersedia() ' metode.
    • Setelah itu, baca byte dari input stream menggunakan tombol “ membaca() ' metode.
    • Sekarang, ubah array byte menjadi string dan tampilkan konten file.
    • Terakhir, tutup file baca menggunakan yang terkait ' menutup() ' metode.

Keluaran


Dalam hasil ini, dapat tersirat bahwa jumlah byte dalam file yaitu, ruang yang terakumulasi oleh konten dikembalikan sesuai dengan rentang maksimum dalam larik byte yaitu, '50'. Juga, konten file dikembalikan dengan tepat.

Konten File


Untuk mendapatkan gambaran tentang “ melewati() ' Dan ' mengatur ulang() metode, pertimbangkan demonstrasi berikut:


Dalam ilustrasi ini, metode 'lewati ()' melompati jumlah byte yang ditentukan yaitu, ' 5 -> Jawa ” dari konten file dari awal. Namun metode 'reset ()' menyetel ulang aliran.

Kesimpulan

InputStream ' kelas dari ' java.io ” paket adalah superclass abstrak yang sesuai dengan aliran input byte yang digunakan untuk membaca data file. Kelas ini terdiri dari berbagai metode yang membantu dalam metodologi membaca file secara efektif sesuai kebutuhan. Blog ini mendemonstrasikan tujuan dan cara kerja 'InputStream' di Java.