Maison > Java > javaDidacticiel > Comment convertir des objets sérialisables Java en tableaux d'octets pour la transmission réseau ?

Comment convertir des objets sérialisables Java en tableaux d'octets pour la transmission réseau ?

Barbara Streisand
Libérer: 2024-12-23 03:34:14
original
869 Les gens l'ont consulté

How Do I Convert Java Serializable Objects to Byte Arrays for Network Transmission?

Conversion d'objets sérialisables Java en tableaux d'octets

Lors de la transmission de données sur des réseaux, il est souvent souhaitable de convertir des objets sérialisables en tableaux d'octets. Cela permet une transmission et une reconstruction efficaces du côté de la réception. En Java, la sérialisation et la désérialisation d'objets en tableaux d'octets est un processus simple.

Tout d'abord, définissons une classe sérialisable AppMessage :

import java.io.Serializable;

public class AppMessage implements Serializable {}
Copier après la connexion

Pour convertir un objet AppMessage en tableau d'octets, suivez ces étapes :

byte[] messageBytes = serialize(appMessage);

// Method to serialize an object to byte[]
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);
    }
}
Copier après la connexion

Sur la machine réceptrice, vous pouvez reconstruire l'objet AppMessage à partir de l'octet array :

AppMessage receivedMessage = (AppMessage) deserialize(messageBytes);

// Method to deserialize an object from byte[]
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);
    }
}
Copier après la connexion

En suivant ces étapes, vous pouvez facilement transmettre des objets Java sérialisables entre machines sous forme de tableaux d'octets, garantissant un transfert de données efficace et une facilité de reconstruction.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal