Javax.imageio.ImageIO ???

cs_SLaYerS Messages postés 12 Date d'inscription vendredi 27 décembre 2002 Statut Membre Dernière intervention 2 décembre 2005 - 9 janv. 2003 à 22:47
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004 - 2 nov. 2004 à 14:59
Voila on m'avait dit qu'on pouvait lire toute sorte de fichier image... le BMP est il aussi suporter ?
Car quand je fait
Image img = ImageIO.read(new File("temp.bmp"));
ca ne fabrique pas l'image, img reste 'null'
que puis je faire pour y remedier ?

16 réponses

JHelp Messages postés 261 Date d'inscription jeudi 5 septembre 2002 Statut Membre Dernière intervention 6 octobre 2005 11
10 janv. 2003 à 08:47
Tout d'abord fait le test suivant, il te donne la liste des formats de fichiers qu'il sait traiter pour l'instant. Si le bmp n'est pas dans la liste, il faut télécharger un plugin suplémentaire, tu devrais en trouver sur le site de sun : www.java.sun.com
JHelp
0
JHelp Messages postés 261 Date d'inscription jeudi 5 septembre 2002 Statut Membre Dernière intervention 6 octobre 2005 11
10 janv. 2003 à 08:50
J'ai oublié le test, désolé le voici :

import javax.imageio.ImageIO;
public class Test
{
   public static void main(String[] args)
   {
      String[] format=ImageIO.getReaderFormatNames();
      int nb=format.length;
      for(int i=0;i<nb;i++)
         System.out.println("Format "+i+" : "+format[i]);
      format=ImageIO.getReaderMIMETypes();
      nb=format.length;
      for(int i=0;i<nb;i++)
          System.out.println("MIME "+i+" : "+format[i]);
    }
}


JHelp
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
21 oct. 2004 à 19:47
Vivi54 >:)
où peut-on récupérer les plugin sur java.sun.com je ne l'ai pas trouvé.
Moi ce qui m'intérresse c'est les images DICOM
merci
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
1 nov. 2004 à 13:58
Ca marche nickel à partir de java 1.5...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 08:11
Vivi54 >:)
qu'a tu utilisé comme prog pour la lire et l'afficher si cela ne te gène pa de me le donner je si qu'une ptite débutante en java et en dicom
merci
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
2 nov. 2004 à 09:41
//Convertion de type d'image
/*
Code qui lit d'abort un fichier image (n'importe n'awak gérer par imageIO installé sur ton poste... si t'as JVM 1.5 y aura aussi le BMP sinon non) sauve l'image dans un buffer et la recopie dans un autre fichier au format JPG.
*/
String fileTemp_name="C://temp.jpg";

//"file" est ton File qui tu veux lire
//Lecture de file ds un buffer

// ImageIO.setUseCache(false);
FileImageInputStream fiis = new FileImageInputStream(file);
BufferedImage input = ImageIO.read(fiis);

//Ecriture de l'image ds le file temp au format JPG
OutputStream fileTemp = new FileOutputStream(fileTemp_name);
OutputStream outputStream = new BufferedOutputStream(fileTemp);
ImageIO.write(input, "jpg", outputStream);

//Obtention du contenu du fichier JPG dans un tableau de byte si
// t'as besoin... (au cas ou... je te l'ai mis)
FileInputStream fileStream = new FileInputStream(fileTemp_name);
DataInputStream in = new DataInputStream (fileStream);
byte[] b = new byte[in.available()];
in.readFully (b);

A noter que ce code marche "à peu près" bien... En fait, le seul hic c'est que la première fois que tu charge une image, ça met trop de temps (30s) à lire l'image par contre, ensuite pour les prochains chargements, ça ne mettra à peine 2 sec' !!!!!! Bizarre !!!!!! (D'ailleurs, si quelqu'un a une idée du pourquoi du comment ?!? J'ai trouvé des cas similaires sur le net en cherchant un peu... mais pas de solution)

J'espère que ça t'aura aidé vivi !!!!

@+

Anthony
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 11:45
Vivi54 >:)
désolé mais je suis pas douée j'ai deux fautes du types:

Test1.java:29: cannot find symbol
symbol : class FileImageInputStream
location: class Test1
FileImageInputStream fiis = new FileImageInputStream(fileTemp_name);
^
Test1.java:29: cannot find symbol
symbol : class FileImageInputStream
location: class Test1
FileImageInputStream fiis = new FileImageInputStream(fileTemp_name);

à qoui sont du ces fautes sinon cela marche sur pour les images dicom
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
2 nov. 2004 à 12:27
tu dois bien sûr ajouter cette ligne dans les import initiaux au début de ton fichier java :

import javax.imageio.stream.FileImageInputStream;
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 13:11
Vivi54 >:)
ok merci j'essaie et je te tien au courant
merci
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 13:15
Vivi54 >:)
je viens d'essayer et j'ai toujours cette faute

Test1.java:23: cannot resolve symbol
symbol : constructor FileImageInputStream (java.lang.String)
location: class javax.imageio.stream.FileImageInputStream
FileImageInputStream fiis = new FileImageInputStream(fileTemp_name); ^
alor là je vois pas ce que cela peut-être car j'ai bien ajouté l'import
merci
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
2 nov. 2004 à 13:32
Tu as mal copié le code apparemment...

C'est

.............
FileImageInputStream fiis = new FileImageInputStream(file);
.............
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 14:07
Vivi54 >:)

oui mais j'ai toujours la même erreur
Test1.java:23: cannot resolve symbol
symbol : constructor FileImageInputStream (java.lang.String)
location: class javax.imageio.stream.FileImageInputStream
FileImageInputStream fiis = new FileImageInputStream(file);
^
1 error
je suis désolé de t'ennuyer autant.
merci
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
2 nov. 2004 à 14:16
Pas de soucis... tu ne m'ennuie pas... :-) Faut bien s'entraider qd même...

Donc il faut que le type de la variable "file" soit un File...

Pour ce faire, tu peux éventuellement faire la chose suivante :
....
File file = new File(ici le String représentant le chemin absolu de ton fichier image);
....

J'espere que ca va marcher cette fois... :-)
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 14:30
Vivi54 >:)
je déséspère cela ne marche pas toi tu l'as déjà essayé chez toi??
merci
0
cs_vivi54 Messages postés 13 Date d'inscription jeudi 21 octobre 2004 Statut Membre Dernière intervention 19 janvier 2005
2 nov. 2004 à 14:32
Vivi54 >:)
c'est du .dcm que tu affiche?
0
lacouine Messages postés 33 Date d'inscription vendredi 20 octobre 2000 Statut Membre Dernière intervention 28 octobre 2004
2 nov. 2004 à 14:59
Ah bah non...

Ca effectivement, c plus délicat... A vrai dire, je ne connais même pas ce format d'image...

Tiens voici une URL qui pourra davantage te parler concernant la librairie ImageIO...

(Titre : Charger et sauvegarder des images avec ImageI/O)
http://www.labo-sun.com/index.jsp?actionId=11&docId=253&techno=1

mais il me semble néanmoins que l'emploi de cette bibliotheque ne soit pas la solution appropriée pour ton prob... Désolé !!! :-s
0
Rejoignez-nous