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 :

chemin d'un fichier avec java


Sujet :

Entrée/Sortie Java

  1. #1
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut url d'un fichier en java
    Bonjour,

    S’il vous plait j’ai besoin d’aide, mon problème c’est que je veux récupérer le chemin d’un fichier qui se trouve dans un coin de mon disque dur. Avant j’utilise le code suivant mais il me permet seulement de trouver mon fichier s’il se trouve dans mon jar :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    URL url = Thread.currentThread().getContextClassLoader().getResource("easytime-wc.properties"); 
           	  System.out.println("url-wc = "+url.getPath()); 
           	  String path = url.getPath().substring(1).replace("%20"," ").replace("!", "");
           	  System.out.println("path = "+path);
    Merci d’avance

  2. #2
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    Salut,

    Je suppose que tu dispose d'un objet de type File, par exemple obtenu par un JFileChooser.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String path = file.getAbsolutePath();

  3. #3
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    salut Merci voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String path = new File("easytime-wc.properties").getAbsolutePath();
              System.out.println("path = "+path);
           	  FileReader is = new FileReader(path);
    le problème maintenant si je dispose de plusieurs fichiers nomé easytime-wc.properties, comment je vais faire pour trouver le bon.

    Merci

  4. #4
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    Si ce n'est pas un fichier choisi par l'utilisateur mais un fichier interne a ton appli (une ressource) alors tu as une autre méthode.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    URL imgURL = classe.getResource(pathRelative);
    classe est un objet de type Class, indiquant le répertoire parent, où est la classe donc.
    pathRelative est de type String et indique le chemin relatif du fichier.
    Java cherchera le fichier à partir du répertoire où se trouve classe, éventuellement avec un chemin complexe dans pathRelative.

    Par exemple tu as un package contenant la classe MonObjet, qui contient un répertoire images qui contient le fichier ressource "image.png".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String pathRelative = "images" + File.separatorChar + "image.png";
    URL imgURL = MonObjet.class.getResource(pathRelative);

  5. #5
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    Merci infinimemt

    Quand je veux lire ces fichiers dans une classe, je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getClass().getResource("/res/monfichier"))
    et ça marche.

    Maintenant, je veux mettre mon application dans un fichier jar.*
    J'ai gardé la même structure de fichier, mais ça ne marche pas, il ne
    trouve jamais mes fichiers.

    Comment faire pour mon code soit compatible avec les 2 utilisations ?

    Merci

  6. #6
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340

  7. #7
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    Salut

    Est ce que c'est possible de récupérer la ou le système d'exploitation windows est installé ? (c: ou d: ...)

    En effet j'ai besoin de récupérer le chemin de Windows/system32/monfichier.txt


    Merci

  8. #8
    Inactif  
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    885
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 885
    Points : 1 320
    Points
    1 320
    Par défaut
    Salut,

    peut être qu'en lisant une variable d'environnement de windows, genre "windir" : System.getProperty("windir").

  9. #9
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 867
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 867
    Points : 22 927
    Points
    22 927
    Billets dans le blog
    53
    Par défaut
    Utilise plutot System.getEnv("windir") une fois l'OS connu par System.getProperty("os.name").

  10. #10
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut chemin d'un fichier avec java
    Bonjour,

    Avant j'utilise le code suivant et ça marche bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     String path = new File("easytime-conf.properties").getAbsolutePath();
    maintenant après que j'ai installé mon programme entant que service windows le service crée le fichier easytime-conf.properties dans le system32. est ce qu'il y a une autre méthode qui permet de le mettre dans le repertoire de l'installation ?

    Merci d'avance

  11. #11
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Tu peux essayer de préciser le chemin absolu en paramètre de ton constructeur de File.

  12. #12
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    Voici mon code complet :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
      public static void start()
         {
        	 String name = "easytime-ws";
    		 String path = new File("easytime-conf.properties").getAbsolutePath();
    		 System.out.println("pathURL = "+path);
    	 	 try {
     
    	 		  FileReader is; 
    	 		  is = new FileReader(path);
    			  Properties p = new Properties();
    			  p.load(is);
    			  name = p.getProperty("DisplayName");
    			  if (name.compareTo("") == 1) name= "easytime-ws";
    	          is.close();   
    	 	 }  
     
    	 	     catch (FileNotFoundException e1) {
    	 		 System.out.println("impossible");
    			 e1.printStackTrace();
     
    	    	 } catch (IOException e1) {	
    		       e1.printStackTrace();
    		     } 
     
        	 ExecCmdUtils.exec("net start "+name+"", logger) ;
         }

  13. #13
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Comme je te le disais tu peux essayer de mettre le chemin absolu en paramètre de ton constructeur de File.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String path = new File("C:/...../easytime-conf.properties").getAbsolutePath

  14. #14
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    en effet je travail sur un logiciel, qui peut etre installé dans de d: e:, donc il faut que j'utilise les chemins relatifs mais des chemins absoluts.

  15. #15
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut Chemin vers un fichier dans l'ordinateur
    Je vouderai récupérer le chemin d'un fichier qui se trouve dans mon ordinateurs dans n'impotre quel emplacement avec java, pouvez vous m'aider.

    Merci d'avance

  16. #16
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu pourrais être plus clair ? Quel est le problème précisément ?

    a++

  17. #17
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    je cherche a recuprer le chemin d'un fichier et je connais seulement son nom.

  18. #18
    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
    Si t'as un File() pour ce fichier, tu appelle dessus la méthode getAbsolutePath()

  19. #19
    Provisoirement toléré
    Homme Profil pro
    Développeur JAVA JEE / PHP
    Inscrit en
    Avril 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur JAVA JEE / PHP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 151
    Points : 72
    Points
    72
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String path = new File("easytime-conf.properties").getAbsolutePath();
    Mais cette methode permet juste de recupere le chemin de fichier qui se trouve dans le repertoire d'execution.

  20. #20
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Il n'y a pas de magie : tu dois spécifier le chemin complet vers le fichier.

    a++

Discussions similaires

  1. Paramétrage d'un fichier (Avec java)
    Par kalmo dans le forum Entrée/Sortie
    Réponses: 0
    Dernier message: 28/08/2008, 17h35
  2. sauvegarde de fichier avec java
    Par bobkorn dans le forum Général Java
    Réponses: 1
    Dernier message: 28/05/2008, 18h23
  3. Copier et coller un fichier avec java
    Par opensource dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 13/03/2008, 18h53
  4. etbalir une arborescence des fichiers avec java
    Par groupe dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 13/03/2008, 03h02
  5. [Imprimer] Imprimer un fichier avec Java
    Par gwendo dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 13/11/2004, 21h23

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