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

Développement Web en Java Discussion :

Afficher un Blob


Sujet :

Développement Web en Java

  1. #1
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut Afficher un Blob
    Bonjour,

    Dans une application, l'utilisateur peut enregistrer un fichier quelconque en base de données (en Blob).

    J'utilise ce genre de technique pour permettre l'affichage de ce fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    BLOB myBlob = (BLOB)cstmt.getObject(1);
    InputStream is=myBlob.getBinaryStream();
     
    int z;
     
    						ServletOutputStream op = response.getOutputStream();
     
     
     
    while ((z=is.read()) != -1) 
    { 								op.write((char)z);
    }
    ça fonctionne correctement avec les images, les pdfs,.. mais lorsque j'ai un document word, ça ouvre une page avec des caractères illisibles, inexploitables..

    Comment pallier ce problème ?

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Il faut utiliser le bon type mime (liste).

    Pour MS Word ce serait "application/msword"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    response.setContentType(...);
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    Oui je m'en doutais
    C'est ce que j'utilise dans ce cas-ci, mais j'accepte tous les types sauf certains comme application/octet-stream ..

    Cela signifique que je dois stocker en base de données le type de MIME pour pouvoir l'afficher correctement je suppose ?

    Merci à vous.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    C'est mieux effectivement...
    En plus, au moment où tu sauvegardes, tu peux le récupérer +/- automatiquement
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Par défaut
    +- oui.. par exemple, si le fichier word est ouvert lorsque l'utilisateur le charge.. on le reconnait comme octet-steam plutôt que ms-word ^^

    Et bien ok, merci en tout cas !

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

Discussions similaires

  1. [FPDF] Afficher image blob sur PDF
    Par Saphir09 dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 24/04/2012, 18h02
  2. Afficher un BLOB (pdf)
    Par libuma dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 08/11/2010, 16h40
  3. Afficher un blob / aes_encrypt
    Par Homegrown dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 18/02/2009, 15h45
  4. Lire et afficher des BLOB avec PHP
    Par CFGilles dans le forum SQL
    Réponses: 4
    Dernier message: 04/08/2008, 15h19
  5. [MySQL] Afficher champ Blob formaté
    Par Benat64 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 16/03/2006, 17h07

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