Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Kelas Java ByteArrayOutputStream

Kelas Java ByteArrayOutputStream

Dalam tutorial ini, kita akan belajar tentang Java ByteArrayOutputStream dan metodenya dengan bantuan contoh.

ByteArrayOutputStream kelas java.io paket dapat digunakan untuk menulis larik data keluaran (dalam byte).

Ini memperluas OutputStream kelas abstrak.

Catatan :Di ByteArrayOutputStream mempertahankan array byte internal untuk menyimpan data.


Buat ByteArrayOutputStream

Untuk membuat aliran keluaran larik byte, kita harus mengimpor java.io.ByteArrayOutputStream paket dulu. Setelah kita mengimpor paket, berikut adalah bagaimana kita dapat membuat aliran keluaran.

// Creates a ByteArrayOutputStream with default size
ByteArrayOutputStream out = new ByteArrayOutputStream();

Di sini, kami telah membuat aliran keluaran yang akan menulis data ke array byte dengan ukuran default 32 byte. Namun, kita dapat mengubah ukuran default array.

// Creating a ByteArrayOutputStream with specified size
ByteArrayOutputStream out = new ByteArrayOutputStream(int size);

Di sini, ukuran menentukan panjang larik.


Metode ByteArrayOutputStream

ByteArrayOutputStream class menyediakan implementasi berbagai metode yang ada di OutputStream kelas.

Metode tulis()

Contoh:ByteArrayOutputStream untuk menulis data

import java.io.ByteArrayOutputStream;

class Main {
  public static void main(String[] args) {

    String data = "This is a line of text inside the string.";

    try {
      // Creates an output stream
      ByteArrayOutputStream out = new ByteArrayOutputStream();
      byte[] array = data.getBytes();

      // Writes data to the output stream
      out.write(array);

      // Retrieves data from the output stream in string format
      String streamData = out.toString();
      System.out.println("Output stream: " + streamData);

      out.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Keluaran

Output stream: This is a line of text inside the string.

Dalam contoh di atas, kami telah membuat aliran keluaran array byte bernama output .

ByteArrayOutputStream output = new ByteArrayOutputStream();

Untuk menulis data ke aliran output, kami telah menggunakan write() metode.

Catatan :getBytes() metode yang digunakan dalam program mengubah string menjadi array byte.


Mengakses Data dari ByteArrayOutputStream

Misalnya,

import java.io.ByteArrayOutputStream;

class Main {
  public static void main(String[] args) {
    String data = "This is data.";

    try {
      // Creates an output stream
      ByteArrayOutputStream out = new ByteArrayOutputStream();

      // Writes data to the output stream
      out.write(data.getBytes());

      // Returns an array of bytes
      byte[] byteData = out.toByteArray();
      System.out.print("Data using toByteArray(): ");
      for(int i=0; i<byteData.length; i++) {
        System.out.print((char)byteData[i]);
      }

      // Returns a string
      String stringData = out.toString();
      System.out.println("\nData using toString(): " + stringData);

      out.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Keluaran

Data using toByteArray(): This is data.
Data using toString(): This is data.

Pada contoh di atas, kita telah membuat larik byte untuk menyimpan data yang dikembalikan oleh toByteArray() metode.

Kami kemudian telah menggunakan for loop untuk mengakses setiap byte dari array. Di sini, setiap byte diubah menjadi karakter yang sesuai menggunakan typecasting.


close() Metode

Untuk menutup aliran keluaran, kita dapat menggunakan close() metode.

Namun, close() metode tidak berpengaruh dalam ByteArrayOutputStream kelas. Kita dapat menggunakan metode kelas ini bahkan setelah close() metode ini dipanggil.


Metode ByteArrayOutputStream Lainnya

Metode Deskripsi
size() mengembalikan ukuran larik di aliran keluaran
flush() menghapus aliran keluaran

Untuk mempelajari lebih lanjut, kunjungi Java ByteArrayOutputStream (dokumentasi resmi Java).


java

  1. Kata kunci terakhir Java
  2. Instance Java dari Operator
  3. Warisan Jawa
  4. Kelas Statis Bersarang Java
  5. Kelas Anonim Java
  6. Kelas Tunggal Jawa
  7. Refleksi Jawa
  8. Kelas Java ObjectOutputStream
  9. Java Generik
  10. Kelas File Java