java
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.
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.
ByteArrayOutputStream
class menyediakan implementasi berbagai metode yang ada di OutputStream
kelas.
write(int byte)
- menulis byte yang ditentukan ke aliran keluaranwrite(byte[] array)
- menulis byte dari larik yang ditentukan ke aliran keluaranwrite(byte[] arr, int start, int length)
- menulis jumlah byte sama dengan panjang ke aliran keluaran dari larik yang dimulai dari posisi start writeTo(ByteArrayOutputStream out1)
- menulis seluruh data arus keluaran saat ini ke arus keluaran yang ditentukan
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.
toByteArray()
- mengembalikan array yang ada di dalam aliran keluarantoString()
- mengembalikan seluruh data aliran keluaran dalam bentuk stringMisalnya,
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.
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 | Deskripsi |
---|---|
size() | mengembalikan ukuran larik di aliran keluaran |
flush() | menghapus aliran keluaran |
Untuk mempelajari lebih lanjut, kunjungi Java ByteArrayOutputStream (dokumentasi resmi Java).
java
Kelas Java PrintStream Dalam tutorial ini, kita akan belajar tentang kelas Java PrintStream dan metode print() dan printf() dengan bantuan contoh. PrintStream kelas java.io package dapat digunakan untuk menulis data keluaran dalam bentuk (teks) yang dapat dibaca secara umum alih-alih byte. Ini mem
Kelas Penulis Java Dalam tutorial ini, kita akan belajar tentang Java Writer, subclass-nya dan metodenya dengan bantuan sebuah contoh. Writer kelas java.io package adalah superclass abstrak yang mewakili aliran karakter. Sejak Writer adalah kelas abstrak, itu tidak berguna dengan sendirinya. Namun
Kelas OutputStreamWriter Java Dalam tutorial ini, kita akan belajar tentang Java OutputStreamWriter dan metodenya dengan bantuan contoh. OutputStreamWriter kelas java.io package dapat digunakan untuk mengubah data dalam bentuk karakter menjadi data dalam bentuk byte. Ini memperluas kelas abstrak W
Kelas Java PrintWriter Dalam tutorial ini, kita akan belajar tentang Java PrintWriter dan metode print() dan printf() dengan bantuan contoh. PrintWriter kelas java.io package dapat digunakan untuk menulis data keluaran dalam bentuk (teks) yang dapat dibaca secara umum. Ini memperluas kelas abstrak