IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Fichier image to Byte[]


Sujet :

Langage Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Points : 386
    Points
    386
    Par défaut Fichier image to Byte[]
    Bonjour
    Sur une appli, j'affiche sur la page d'accueil un logo chargé en bdd. Avant personnalisation la bdd est vide et je veux afficher un logo de remplacement. J'avais codé ceci qui semblait fonctionner et je m'aperçois que néni.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    	public byte[] logoDeRemplacement(){
    		String FileName = this.getServletContext().getRealPath("/WEB-INF/logo.gif");
    System.out.println("Logo de remplacement:"+FileName);
    		ByteArrayOutputStream baos = new ByteArrayOutputStream();
    		BufferedImage image = null;
    		try{
    			image = ImageIO.read(new File(FileName));
    			image.flush();
    			// BMP, bmp, GIF, gif, jpeg, JPEG, jpg, JPG, png, PNG, wbmp,
    System.out.println(image.getHeight()+"X"+image.getWidth());
    			ImageIO.write(image,"gif",baos);
    			baos.flush();
    System.out.println(baos.size());
    		}catch(final Exception ioe){ioe.printStackTrace();}
     
    		return(baos.toByteArray());
    L'image est bien chargée, sa taille affichée mais le baos est toujours vide ?
    ou est l'erreur ?
    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    pourquoi passer par imageio? Pourquoi ne pas prendre l'inputstream correspondant à ton fichier source et le lire directement dans un byte[] via read(byte[]) ? La tu va impliquer tout la couche awt avec ton imageio -> sympa pour un serveur d'avoir besoin d'un environnement graphique :s

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Points : 386
    Points
    386
    Par défaut
    OK mais je ne suis pas du métier donc j'ai retranscrit comme ceci et ça fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String FileName = this.getServletContext().getRealPath("/WEB-INF/logo.gif");
    		byte[] logo = null;
    		try{
    			InputStream ips = new FileInputStream(FileName);
    			int taille = ips.available() ;
    			logo = new byte[taille]; 
    			ips.read(logo) ;
    			ips.close();
    		}catch(final Exception ioe){ioe.printStackTrace();}
    		return(logo);
    Quant au premier code, c'est que le format gif n'est pas reconnu, en passant par png ça marche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. intégrer un fichier image dans une base de donnée?
    Par Lody dans le forum Requêtes
    Réponses: 9
    Dernier message: 16/03/2006, 20h08
  2. Date fichier image
    Par Aphyo dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/08/2005, 00h03
  3. [VB.NET] Fichier text et byte()
    Par nmerydem dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/11/2004, 18h28
  4. Imprimer fichiers images en ligne de commande
    Par naholyr dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 02/09/2004, 19h11
  5. Comment lire un fichier image
    Par Charlemagne dans le forum DirectX
    Réponses: 9
    Dernier message: 12/03/2004, 01h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo