2010-12-06 5 views
1

Bonjour J'ai une classe appelée table. la table garde la trace de remoteIP, remotePort, macAdd et avgRtt c'est la structure générale de celui-ci.Je veux convertir un objet en octet [] en utilisant la sérialisation en Java

public class table implements java.io.Serializable{ 


String remoteIP; 
int remotePort; 
String macAdd; 
int avgRtt; 


public table(String rIP,int rP,String mac,int avRTT){ 

       remoteIP=rIP; 
    remotePort=rP; 
    macAdd=mac; 
     avgRtt=avRTT; 

} 
} 

Je suis nouveau à l'aide de sérialisation, je veux être en mesure de convertir en un octet [] et vice-versa.Does quelqu'un sait comment je serais en mesure de le faire?

+0

4 espaces au début d'une ligne indiquent le code, btw - votre formatage est un peu éteint. – ZoFreX

+0

En outre, je n'ai jamais demandé * pourquoi * vous faites ceci - c'est une exigence légèrement inhabituelle. Quel est le problème réel que vous résolvez? – ZoFreX

Répondre

3

Quelque chose le long de ces lignes:

table t; 
ByteArrayOutputStream aOS = new ByteArrayOutputStream(); 
ObjectOutputStream oOS = new ObjectOutputStream(aOS); 
oOS.writeObject(t); 
oOS.close(); 
byte[] byteArray = aOS.toByteArray(); 

Les Java docs on serialization sont vraiment bons, et avec le code ci-dessus et les vous devriez être en mesure d'écrire le code pour désérialisable aussi! Vous pouvez également trouver le JavaDoc pour ObjectOutputStream et ByteArrayOutputStream utile.

1

Vous pourriez le faire avec apache commons assez facilement. Voir here.

Questions connexes