Rumah > Java > javaTutorial > Bagaimanakah saya Boleh Mensiri dan Menyahseri Objek Java ke dan dari Tatasusunan Byte?

Bagaimanakah saya Boleh Mensiri dan Menyahseri Objek Java ke dan dari Tatasusunan Byte?

DDD
Lepaskan: 2024-12-17 18:27:11
asal
747 orang telah melayarinya

How Can I Serialize and Deserialize Java Objects to and from Byte Arrays?

Menukar Objek Boleh Bersiri kepada Tatasusunan Bait dalam Java

Di Java, antara muka Boleh Bersiri membenarkan objek ditukar kepada aliran bait. Ciri ini penting apabila objek perlu dihantar melalui rangkaian atau disimpan dalam pangkalan data.

Mengekodkan Objek kepada Tatasusunan Bait

Untuk mengekod objek ke dalam tatasusunan bait, anda boleh menggunakan langkah berikut:

  1. Segera ByteArrayOutputStream objek.
  2. Buat objek ObjectOutputStream menggunakan ByteArrayOutputStream sebagai aliran keluarannya.
  3. Tulis objek ke ObjectOutputStream menggunakan kaedah writeObject.
  4. Siram ObjectOutputStream untuk memastikan semua dataStream ditulis kepada ByteArrayOutputStream.
  5. Dapatkan tatasusunan bait daripada ByteArrayOutputStream menggunakan kaedah toByteArray.

Menyahkod Objek daripada Tatasusunan Byte

Untuk menyahkod objek daripada tatasusunan bait , anda boleh melakukan berikut:

  1. Sertakan objek ByteArrayInputStream menggunakan tatasusunan bait.
  2. Buat objek ObjectInputStream menggunakan ByteArrayInputStream sebagai aliran inputnya.
  3. Baca objek daripada ObjectInputStream menggunakan readObject kaedah.

Contoh Kod

Berikut ialah kaedah utiliti untuk bersiri dan penserialisasian:

Pensirilan:

static byte[] serialize(final Object obj) {
    ByteArrayOutputStream bos = new ByteArrayOutputStream();

    try (ObjectOutputStream out = new ObjectOutputStream(bos)) {
        out.writeObject(obj);
        out.flush();
        return bos.toByteArray();
    } catch (Exception ex) {
        throw new RuntimeException(ex);
    }
}
Salin selepas log masuk

Penyahserikatan:

static Object deserialize(byte[] bytes) {
    ByteArrayInputStream bis = new ByteArrayInputStream(bytes);

    try (ObjectInput in = new ObjectInputStream(bis)) {
        return in.readObject();
    } catch (Exception ex) {
        throw new RuntimeException(ex);
    }
}
Salin selepas log masuk

Dengan kaedah ini, anda boleh menukar dengan mudah objek ke dan dari tatasusunan bait, membolehkan anda menghantar data melalui rangkaian atau meneruskannya storan.

Atas ialah kandungan terperinci Bagaimanakah saya Boleh Mensiri dan Menyahseri Objek Java ke dan dari Tatasusunan Byte?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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