Kelas ByteArrayInputStream terdiri daripada dua fasa: Array Byte dan satu untuk Strim Input. Tatasusunan Byte memainkan peranan penting dalam menyimpan data penting dan bait yang diperlukan berkenaan dengan aliran input. Kelas Java ByteArrayInputStream terdiri daripada penimbal dalaman, yang bertanggungjawab untuk membaca tatasusunan bait sebagai aliran. Tatasusunan bait menghantar data untuk disuap sebagai aliran input. Data ini, apabila terdapat dalam penimbal, akan meningkat. Traversal dan mendapatkan semula data menjadi fleksibel dan lancar menggunakan kelas ini.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Sintaks:
public class ByteArrayInputStream extends InputStream
Sebagai sebahagian daripada Java ByteArrayInputStream, aliran pelaksanaan adalah seperti berikut:
Kelas awam ByteArrayInputStream diisytiharkan, yang memanjangkan antara muka sebagai medium untuk berinteraksi dengan strim yang diletakkan dengan InputStream.
Kerja ByteArrayInputStream agak lurus ke hadapan yang prinsip utamanya adalah untuk menukar tatasusunan bait kepada aliran input dengan lancar. Sebagai kelebihan tambahan kelas ini, penimbal memastikan bahawa pakej java.io.ByteArrayInput yang terdiri daripada API membolehkan anda membaca data daripada tatasusunan bait sebagai aliran tatasusunan bait, yang kemudiannya bertukar menjadi aliran input, yang akan dimasukkan ke dalam penampan. ByteArrayInputstream ialah subkelas kelas InputStream. Oleh itu, ByteArrayInputStream boleh digunakan sebagai InputStream. Jika data disusun dan disimpan dalam tatasusunan sebagai aliran input, ini boleh dibungkus ke dalam tatasusunan bait dan boleh bertukar menjadi strim dengan mudah. Setelah objek ByteArrayInputStream sedia, maka senarai kaedah pembantu boleh digunakan untuk membaca dan melakukan operasi pada strim.
Pembina berikut digunakan untuk menyokong kelas ByteArrayInputStream java.
ByteArrayInputStream[byte a]
Sebagai sebahagian daripada Java ByteArrayInputStream, pembina ini berfungsi dengan cara yang digunakan untuk menerima set tatasusunan bait yang disediakan, terutamanya sebagai parameter dalam ingatan penimbal dalaman yang hadir sebagai sebahagian daripada pakej dan kelas.
ByteArrayInputStream(byte [] a, int off, int len)
Pembina ini sebagai sebahagian daripada kelas java ByteArrayInputStream menghantar tiga argumen sebagai parameter daripada strim, yang mengambil kira tatasusunan bait, integer dimatikan dan panjang integer yang ditentukan, dan aliran juga mengekalkan susunan apabila disuap sebagai input dalam memori penimbal yang bermaksud bahawa mula-mula tatasusunan bait a[], kemudian dua nilai integer di mana dimatikan Merupakan bait pertama yang akan dibaca diikuti dengan panjang bilangan bait yang akan dibaca.
Di bawah ialah kaedah Java ByteArrayInputStream:
Kaedah ini adalah sebahagian daripada kelas ByteArrayInputStream yang digunakan untuk membaca bait seterusnya yang tersedia dalam aliran input yang sudah mengalir, yang mengembalikan jenis int julat 0-255. Jika tiada bait hadir dalam penimbal sebagai aliran input, ia telah kembali ke penghujung strim, yang mengembalikan -1 sebagai nilai.
Kaedah ini membaca bait sehingga panjang bilangan bait bermula dari luar daripada aliran input ke dalam tatasusunan dan mengembalikan jumlah bilangan bait sehingga bait terakhir -1 dikembalikan.
Sebagai sebahagian daripada kelas ByteArrayInputStream, kaedah ini digunakan untuk membaca dan mengakui jumlah bilangan bait yang akan tersedia daripada strim Input untuk dibaca.
Sebagai sebahagian daripada kelas ByteArrayInputStream, kaedah ini digunakan untuk menandakan dan menetapkan kedudukan semasa aliran input. Pada asasnya, ia menetapkan had bacaan untuk mendapatkan bilangan maksimum bait yang boleh dibaca sebelum had yang ditandakan menjadi tidak sah.
Sebagai sebahagian daripada kelas ByteArrayInputStream, kaedah ini digunakan untuk melangkau bilangan bait dalam aliran input sebagai hujah kepada kaedah.
Kaedah ini digunakan untuk menguji aliran input sama ada ia menyokong had yang ditanda atau berfungsi tanpa kehadirannya. Ia mempunyai satu ciri khas yang apabila tanda ini disokong digunakan sebagai kaedah; ia mengembalikan nilai yang sentiasa benar.
This method is used to reset the position of the marker as it is provoked by the mark() method. The added advantage is to reposition and reset the marker for traversing.
This method plays a crux to release all the resources once close. When It gets called, the input stream gets closed, and the stream gets associated with the garbage collector.
Below are the examples of Java ByteArrayInputStream:
This program is used to illustrate the read() method byte by byte in ByteArrayInputStream.
Code:
import java.io.*; public class Input_Buffer_Stream1 { public static void main(String[] args) throws Exception { byte guava = 0; byte pine = 0; byte kiwi = 0; byte orange = 0; byte[] buffr = {guava, pine, kiwi,orange}; ByteArrayInputStream fruits = new ByteArrayInputStream(buffr); int k = 0; while((k=fruits.read())!=-1) { System.out.println("These fruits are really tasty and relising to have & Its the time to have ad enjoy!"); } } }
Output:
This program illustrates the available method of ByteArrayInputStream.
Code :
import java.io.ByteArrayInputStream; public class Input_Buffer_Stream2 { public static void main(String[] args) { byte[] buffr= {20,22}; ByteArrayInputStream bytes = new ByteArrayInputStream(buffr); int bytes_Available = bytes.available(); System.out.println("no of bytes available:" + bytes_Available); } }
Output:
This program illustrates the mark method of the ByteArrayInputStream class.
Code:
import java.io.ByteArrayInputStream; public class Input_Buffer_Stream3 { public static void main(String[] args) { byte[] buffr= {20,22,19,10}; ByteArrayInputStream bytes_arr = new ByteArrayInputStream(buffr); bytes_arr.mark(0); System.out.println("These are the marked bytes of the stream:" + bytes_arr); } }
Output:
This program illustrates the skip method of the ByteArrayInputStream class.
Code :
import java.io.ByteArrayInputStream; public class Input_Buffer_Stream4 { public static void main(String[] args) throws Exception { byte[] buffr= {20,22,18,10}; ByteArrayInputStream learning = null; learning = new ByteArrayInputStream(buffr); long num = learning.skip(1); System.out.println("Char : "+(char)learning.read()); } }
Output:
This program illustrates the boolean mark supported method of the ByteArrayInputStream class.
Code :
import java.io.ByteArrayInputStream; public class Input_Buffer_Stream_5 { public static void main(String[] args) { byte[] buff = {15, 18, 20, 40, 52}; ByteArrayInputStream educba = null; educba = new ByteArrayInputStream(buff); boolean checker = educba.markSupported(); System.out.println("\n mark is supported for : "+ checker ); } }
Output:
This program illustrates the presence of boolean mark, reset, and close method of the ByteArrayInputStream class.
Code:
import java.io.ByteArrayInputStream; import java.io.IOException; public class Input_Buffer_Stream_5 { public static void main(String[] args) { byte[] buff = {15, 18, 20, 40, 52}; ByteArrayInputStream educba = null; educba = new ByteArrayInputStream(buff); boolean checker = educba.markSupported(); System.out.println("\n mark is supported for : "+ checker ); if(educba.markSupported()) { educba.reset(); System.out.println("\n supports for the marking limit once reset"); System.out.println("Char : "+(char)educba.read()); } else { System.out.println("It is not supporting the positioning using reset method"); } System.out.println("educba.markSupported() supported reset() : "+checker); if(educba!=null) { try { educba.close(); } catch (IOException e) { e.printStackTrace(); } } } } <strong>Output:</strong>
Java ByteArrayInputStream is a class that has a lot of capability and versatility to play around with the arrays in the internal buffer, which is the beauty of the class. It does not require any external class or plugin to support its base methods which work with a lot of functionality. ByteArrayInputStream together forms a perfect combination to feed the input and output stream related data.
Atas ialah kandungan terperinci Java ByteArrayInputStream. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!