Voici une fonction vous retournant cette donnée. A vous de la spécialiser selon vos besoins :
/** Méthode qui calcule et affiche dans "sysout" la taille en octets de l’object passé en paramètre.
* @return la taille de l’object passé en paramètre.*/
public static int computeObjectSize(Object o){
ByteArrayOutputStream baOS;
ObjectOutputStream objOS;
int size=0;
try {
baOS = new ByteArrayOutputStream();
objOS = new ObjectOutputStream(baOS);
objOS.writeObject(o);
baOS.close();
objOS.close();
size = baOS.size();
System.out.println("computeObjectSize(Object)> taille de "+o.getClass()+"="+size+" octets");
} catch (IOException e) {
} finally{
baOS=null;
objOS=null;
}
return size;
}
|