[Java] fichier image -> InputStream

marianne31 Messages postés 68 Statut Membre -  
 flolag -
Bonjour,

Je souhaite à partir d'une image créer une InputStream.
Voila ce que je fais :
        File monfichier = new File (path,"photo1.gif") ;
	FileImageInputStream fi = new FileImageInputStream(monfichier) ;
	byte[] b = new byte[xxx];
	fi.read(b) ;
	InputStream in =  new ByteArrayInputStream(b) ;

Mon probleme c'est que je ne connais pas la taille de l'image à la base et que donc je ne sais pas comment déterminer la taille du tableau d'octets (la ou j'ai mis xxx).

Est ce que quelqu'un connait un moyens plus simple de récuperer une InputStream à partir d'un fichier image ?

Merci

Marianne
A voir également:

4 réponses

marianne31 Messages postés 68 Statut Membre 4
 
Merci j'ai réussi a trouver

il y a une méthode qui permet de récupérer la taille du fichier

int taille = (int)monfichier.length() * 8 ;
byte[] b = new byte[taille];
fi.read(b) ;
InputStream in = new ByteArrayInputStream(b) ;

a+
2
getmorecar Messages postés 12 Statut Membre 10
 
Salut!
Mets le statut à "résolu".
Merci!
0
choubaka Messages postés 39986 Date d'inscription   Statut Modérateur Dernière intervention   2 106
 
Salut

tu peux utiliser la classe ByteBuffer pour récupérer les octets, cette classe possède une méthode qui te retourne un array avec les octets récupérés

http://java.sun.com/j2se/1.4.2/docs/api/java/nio/ByteBuffer.html

0
Utilisateur anonyme
 
Salut!

Dans quel but crées-tu un InputStream sur une Image?

HackTrack
0
flolag
 
ok mais dans ta méthode juste un petit truc le fi correspond à quel variable car je ne vois pas du tout
0