Importer fichier

Résolu
khalil-kt Messages postés 17 Statut Membre -  
khalil-kt Messages postés 17 Statut Membre -
Bonjour,
Est ce qu'on peut importer un fichier(son, texte ... ) dans les sources du programme pour pouvoir l'utiliser sans avoir des problème d'emplacement ?
et merci

2 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Bonjour,

    Tu peux ajouter n'importe quels dossiers et fichiers dans ton classpath pour accéder à leur contenu en relatif.

    Si tu travailles avec une architecture Maven le mieux est de les mettre dans src/main/resources
    0
    1. khalil-kt Messages postés 17 Statut Membre
       
      mais moi je veux avoir un fichier .jar, où il y a les fichiers et le programmes
      0
    2. KX Messages postés 19031 Statut Modérateur 3 020
       
      Ma réponse reste valide :-)

      Tout ce qui est dans le jar sera ajouté au classpath, donc tu peux accéder aux ressources qui sont dedans avec des chemins relatifs.

      Voir notamment la méthode Class.getResourceAsStream(String).

      Exemple :

      public class Test {
          public static void main(String[] args) {
              InputStream in = Test.class.getResourceAsStream("monDossier/monFichier");
          }
      }

      monDossier serait dans le classpath (par exemple dans le jar) et monFichier serait en rangé en dessous.
      0
    3. khalil-kt Messages postés 17 Statut Membre > KX Messages postés 19031 Statut Modérateur
       
      et comment l'utiliser, par exemple un son.wav

      et merci
      0
    4. KX Messages postés 19031 Statut Modérateur 3 020 > khalil-kt Messages postés 17 Statut Membre
       
      Par exemple, tu récupères le InputStream avec le code ci-dessus, et tu le passes à la méthode open d'un Clip.

      Clip clip = AudioSystem.getClip();
      clip.open(AudioSystem.getAudioInputStream(in));
      clip.start();
      0
    5. khalil-kt Messages postés 17 Statut Membre > KX Messages postés 19031 Statut Modérateur
       
      merci pour vos réponses,
      Mais j'ai essayer ce code et il a toujours besoins des fichiers sur le bureau
      inputStream in = Main.class.getResourceAsStream("ss/pret.wav");
      		WavPlayer son = new WavPlayer(new File("c:/users/khalil kt/desktop/pret.wav"));
      		son.open();
      		son.play();
      		
      		Thread.sleep(400);
      		son.close();
      0
  2. khalil-kt Messages postés 17 Statut Membre
     
    Merci beaucoup ça a fonctionner :).
    0