Rumah > Java > javaTutorial > teks badan

Java ByteArrayInputStream

WBOY
Lepaskan: 2024-08-30 16:09:13
asal
660 orang telah melayarinya

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
Salin selepas log masuk

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.

Bagaimanakah Kelas ByteArrayInputStream Berfungsi dalam Java?

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 Java ByteArrayInputStream

Pembina berikut digunakan untuk menyokong kelas ByteArrayInputStream java.

ByteArrayInputStream[byte a]
Salin selepas log masuk

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)
Salin selepas log masuk

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.

Kaedah Java ByteArrayInputStream

Di bawah ialah kaedah Java ByteArrayInputStream:

  1. public int read()
  2. baca int awam(bait[] r, int off, int len)
  3. int awam tersedia()
  4. tanda kosong awam(tidak dibaca)
  5. langkau jauh awam(long n)
  6. tanda boolean awamSupported()
  7. tetapan semula kekosongan awam()
  8. kekosongan awam tutup()

1. public int read()

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.

2. public int read(bait[] r, int off, int len)

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.

3. public int tersedia()

Sebagai sebahagian daripada kelas ByteArrayInputStream, kaedah ini digunakan untuk membaca dan mengakui jumlah bilangan bait yang akan tersedia daripada strim Input untuk dibaca.

4. tanda kosong awam(int read)

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.

5. ponteng panjang awam(long n)

Sebagai sebahagian daripada kelas ByteArrayInputStream, kaedah ini digunakan untuk melangkau bilangan bait dalam aliran input sebagai hujah kepada kaedah.

6. tanda boolean awamSupported()

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.

7. public void reset()

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.

8. public void close()

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.

Examples to Implement of Java ByteArrayInputStream

Below are the examples of Java ByteArrayInputStream:

Example #1

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!");
}
}
}
Salin selepas log masuk

Output:

Java ByteArrayInputStream

Example #2

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);
}
}
Salin selepas log masuk

Output:

Java ByteArrayInputStream

Example #3

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);
}
}
Salin selepas log masuk

Output:

Java ByteArrayInputStream

Example #4

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());
}
}
Salin selepas log masuk

Output:

Java ByteArrayInputStream

Example #5

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 );
}
}
Salin selepas log masuk

Output:

Java ByteArrayInputStream

Example #6

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>
Salin selepas log masuk

Java ByteArrayInputStream

Conclusion

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!

Label berkaitan:
sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!