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 :

Problèmes pour la création d'un explorateur


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 110
    Points
    110
    Par défaut Problèmes pour la création d'un explorateur
    Bonjour !

    Je me lance dans la création d'un explorateur de fichier perso, et je me vois déjà 2 problèmes que j'arrive pas à résoudre...

    1er : je récupère la liste des lecteurs grâce à la fonction File.listRoots(), mais j'arrive juste à récupérer les lettres, pas les noms des lecteurs (genre disque local, lecteur DVD...), est ce possible de les avoirs?

    2eme : comment connaitre l'icone associé à une extension de fichier?? existe t'il une façon "propre" d'avoir ça ou est ce qu'il faut que j'aille fouiner dans la base de registre (sachant que je veux faire fonctionner ce programe uniquement sous XP dans un premier temps), et si c'est la seule façon quelqu'un connait t'il un moyen d'aller fouiller la base de registre windows en java ???

    voilà pour mes petits problèmes du soir !
    si quelqu'un a des réponses, je suis preneur !

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Tu peux regarder la classe FileSystemView et sa méthode getIcon.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 110
    Points
    110
    Par défaut
    Merci pour ta réponse je ferai ça ce soir !
    Pour le nom des lecteurs je trouverai grâce à cette classe aussi?

  4. #4
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Pour le nom des lecteurs, cela me semble impossible vu que c'est une particularité des systèmes d'exploitation de type windows. Si une telle méthode existait elle se trouverait dans la classe File.
    Peut être dans une future version de java ... ?

  5. #5
    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,

    Citation Envoyé par iohack Voir le message
    Pour le nom des lecteurs, cela me semble impossible vu que c'est une particularité des systèmes d'exploitation de type windows. Si une telle méthode existait elle se trouverait dans la classe File.
    Peut être dans une future version de java ... ?
    Cela existe déjà et c'est typiquement le rôle de FilesystemView et de sa méthode getSystemDisplayName(File).

    Sauf erreur sous les systèmes Unix cela revient à utiliser file.getName()

    a++

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 110
    Points
    110
    Par défaut
    tous mes problèmes ont l'air résolus alors
    Je teste tout ça ce soir et je vous dirai si ça a maché !

    merci à plus !

  7. #7
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    Salut,



    Cela existe déjà et c'est typiquement le rôle de FilesystemView et de sa méthode getSystemDisplayName(File).

    Sauf erreur sous les systèmes Unix cela revient à utiliser file.getName()

    a++
    Merci pour l'info

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 187
    Points : 110
    Points
    110
    Par défaut
    Ça y est j'ai fini de tester tout ça !!
    Pour les icônes ça marche niquel !
    pour le nom des lecteurs ça marchait sauf que ça me marquait pas le nom des lecteurs "Vides"... en gros j'avais "Disque local" mais ni "Disque amovible" ni "Lecteur DVD"...

    j'ai modifié mon code pour réparer ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public String toString(){
    		String libelle = FileSystemView.getFileSystemView().getSystemDisplayName(this);
    		//si le nom du lecteur est vide, alors on met le type
    		if (libelle == null || libelle.equals("")){
    			//Lettre du lecteur ( Le substring sert à enlever le \ final de la lettre)
    			String lettreLecteur = super.toString().substring(0, super.toString().length()-1);
    			libelle = FileSystemView.getFileSystemView().getSystemTypeDescription(this)+" ("+lettreLecteur+")";
    		}
    		return libelle;
    	}
    Et vala du coup tout fonctionne !
    merci encore !

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

Discussions similaires

  1. problème pour la création de socket en suivant le tuto
    Par Steph1904 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 09/10/2010, 17h07
  2. Problème pour la création d'un schéma XML
    Par soso78 dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 07/06/2010, 13h13
  3. Problème pour la création d'un graphique
    Par yabiyou dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/01/2008, 15h04
  4. [XI] Problème pour la création d'un rapport avec requête intégré
    Par doudoudetahiti dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 05/07/2007, 16h22
  5. Problème pour la création d'une fonction
    Par jipé95 dans le forum C
    Réponses: 5
    Dernier message: 10/12/2006, 14h28

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