trezof1254
Messages postés13Date d'inscriptiondimanche 15 juin 2008StatutMembreDernière intervention24 septembre 2008
-
16 sept. 2008 à 13:20
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 2010
-
21 sept. 2008 à 22:58
bonjour.a tous .je cree une classe qui contient une variable image .et je veut serialiser cette classe mais .mais j'ai une erreur.dans le fichier de serialisation.(lors que je veut lire l'image de la classe appartir de fichier de serialisation ).aucun image n'ete ecrite dans le fichier .alors aider moi slv.
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 17 sept. 2008 à 11:03
Salut:
Utilises la classe ImageIcon comme sheorogathl'avait proposé (ImageIcon implémente l'interface Serializable).
Pour être plus clair, utilises cette classe pour encapsuler un objet de type Image, par la suite tu peux le retourner.
private ImageIcon imageIcon = new ImageIcon();
public void storeImage(Image image) {
imageIcon.setImage(image);
}
public Image getImage() {
return imageIcon.getImage();
}
Il y a une autre solution, qui passe par la classe PixelGrabber qui permet d'extraire les pixels d'un objet Image sous-forme de tableau (byte[]).
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 17 sept. 2008 à 11:05
Petite correction:
Il y a une autre solution, qui passe par la classe PixelGrabber qui
permet d'extraire les pixels d'un objet Image sous-forme de tableau
(int[]).
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 20 sept. 2008 à 22:20
Salut:
Etant donné que la classe BufferedImage hérite de la classe Image, tu peux utiliser cette classe au lieu de la classe Image.
// Passer un objet BufferedImage
BufferedImage bi = ImageIO.read(new File("image.png"));
ImageIcon imageIcon = new ImageIcon(bi);
// Enregistrer l'image
// Cette conversion est légale vu que l'objet initialement passé est un BufferedImage
BufferedImage bi = (BufferedImage)imageIcon.getImage();
ImageIO.write(bi, "jpg", new File("image.jpg"));
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 16 sept. 2008 à 16:34
Tu ne peux pas serialiser une image, la classe Image n'implemente pas serializable, il faut passer par une classe de ton cru ou un ImageIcon ou encore une BufferedImage (pour ce dernier a verifier)
"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
Vous n’avez pas trouvé la réponse que vous recherchez ?
trezof1254
Messages postés13Date d'inscriptiondimanche 15 juin 2008StatutMembreDernière intervention24 septembre 2008 16 sept. 2008 à 22:52
je veut pas serialiser une classe mage mais je veut serialiser une classe que je cree.cette classe contien une image (variable de type image ).alors montrer qui ce qu'il doit faire pour utiliser imageiconou bien befferedredead .
trezof1254
Messages postés13Date d'inscriptiondimanche 15 juin 2008StatutMembreDernière intervention24 septembre 2008 20 sept. 2008 à 18:08
merci pour le derniere astuse.
mais cete foit lorsque je veu enregestrer cette image en utilise imageio,
ImageIo.write((rendredimage)manclasse.getimage,....).l'erreur suivante s'affiche (java.lang.ClassCastException: sun.awt.image.ToolkitImage cannot be cast to java.awt.image.RenderedImage).comment je peu casting imageicon a un rendredimage?.
merci
trezof1254
Messages postés13Date d'inscriptiondimanche 15 juin 2008StatutMembreDernière intervention24 septembre 2008 20 sept. 2008 à 18:14
merci pour le derniere astuse.
mais cete foit lorsque je veu enregestrer cette image en utilise imageio,
ImageIo.write((rendredimage)manclasse.getimage,....).l'erreur suivante s'affiche (java.lang.ClassCastException: sun.awt.image.ToolkitImage cannot be cast to java.awt.image.RenderedImage).comment je peu casting imageicon a un rendredimage?.
merci