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

Entrée/Sortie Java Discussion :

Créer un dossier avec une image


Sujet :

Entrée/Sortie Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Créer un dossier avec une image
    Bonjour à tous,
    je souhaiterais créer un dossier contenant une image copier depuis du jar.
    voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    File imgFolder = new File("Images");
          //on verifie que le dossier existe, si ce n'est pas le cas
          if(!imgFolder.exists() || !imgFolder.isDirectory())
          {
                 // on crée le dossier
    		imgFolder.mkdir();
                 //puis on copie l'image depuis le jar
    		File file = new File(Window.class.getResource("/unknown.png").getPath());
    		FileUtils.copy(file.toPath(), Paths.get("Images/unknown.png"));
    	}
    Mais ce code ne crée que le dossier mais n'arrive pas à copier le fichier.
    votre aide serait appréciable.
    cordialement.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Hello,

    pas de message d'erreur ? C'est bizarre quand même...

    Bon bref, normalement une ressource obtenue avec getResource() ne peut pas être convertie en File.

    Il vaut mieux utiliser getResourceAsStream() qui donne une InputStream, et la copier dans un fichier avec Files.copy().

    ... Ce qui veut dire utiliser les API de fichier modernes, Path plutôt que File.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Sorry,
    j'ai oublié de préciser que lors de la compilation dans eclipse, il n'y pas de soucis. le problème survient lorsque je l'exporte sous forme d’exécutable. le dossier est bien créé mais l'image n'est pas copier.

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Oui donc c'est bien ça, sous forme de .jar les ressources ne sont pas des fichiers du disque dur, évidemment. Ça ne risquait donc pas de marcher, d'où la solution proposée.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Okay, je teste la solution.
    Merci encore.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    J'ai testé ce code. la copie est faite mais l'image n'est pas exploitable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    InputStream stream = Window.class.getResourceAsStream("/unknown.png");
    			try(FileOutputStream fos = new FileOutputStream(path.toFile()))
    			{
    				int read = 0;
    				byte[] buffer = new byte[1024];
    				while((read = stream.read()) != -1)
    				{
    					fos.write(buffer, 0, read);
    				}
    			} catch (IOException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}
    j'ai donc utilisé la classe ImageIO pour lire et écrire, et là c'est okay.
    Merci encore pour votre aide.

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    En même temps c'est un peu normal qu'on ne puisse pas écrire un buffer qu'on n'a pas lu.

    Pour copier vers un fichier, il y a Files.copy()... C'est un peu plus simple.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci pour ton aide thelvin

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

Discussions similaires

  1. Créer des menus avec une image
    Par ftetez dans le forum Débuter
    Réponses: 1
    Dernier message: 05/12/2017, 20h24
  2. (Gimp) créer un cadre avec une couleur de l'image.
    Par byloute dans le forum Imagerie
    Réponses: 0
    Dernier message: 05/04/2010, 18h34
  3. [SP-2007] Créer une colonne avec une image cliquable
    Par Magicmodjo dans le forum SharePoint
    Réponses: 6
    Dernier message: 17/04/2009, 11h16
  4. Créer un lien avec une image
    Par saiyens dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 05/03/2009, 21h54
  5. Créer une vue avec une image au format postscript *.eps
    Par pobsteta dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 22/11/2007, 15h12

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