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

C# Discussion :

[C#]Comment récupérer le chemin complet d'un fichier?


Sujet :

C#

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 61
    Points : 43
    Points
    43
    Par défaut [C#]Comment récupérer le chemin complet d'un fichier?
    Bonjour,

    J'ai un fichier dont je souhaiterais récupérer le chemin complet. Pour cela, j'ai essayé plusieurs propiétés:



    et de la classe FileInfo.

    Le problème, c'est que, quelle que soit la méthode utilisée, je ne récupère pas le chemin du fichier mais un chemin résultant de mon répertoire d'exécution de mon appliction et du chemin relatif de mon fichier.

    Je ne comprends pas bien pourquoi je récupère ce fichier.

    Si quelqu'un avait une idée!!!

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Peux-tu nous mettre le code qui est censé récupérer un chemin de fichier stp :

  3. #3
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Voilà le code que j'utilise. J'utilise seulement la fonction DirectoryName ou d'autres:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    fic=new FileInfo(nom_fenetre);
    chemin_fichier=fic.DirectoryName;

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Mmmh j'avoue que je ne comprends pas bien ton souci.
    Avant de nous demander comment récupérer le chemin d'un fichier, je crois que tu devrais tout simplement nous expliquer ce que tu essayes de faire
    nom_fenetre : : : Est-ce la classe contenue dans une dll, est-ce une classe ecrite dans un fichier .cs :

  5. #5
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Salut .

    peux tu nous donner le résultat que tu obtiens avec FullName stp ?

  6. #6
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Voilà, je vais être plus clair. En fait, pour mon application, j'ai besoin de faire des enregistrements de valeurs. Pour cela, j'ai créé mes propres fichiers. Maintenant, je souhaiterais récupérer les valeurs de ces fichiers sans pour autant sélectionner le fichier à proprement dit dans l'arborescence.

    En fait, dès que je clique sur un élément d'un TreeView, je dois, à partir du nom du fichier, qui est le seul paramètre que je peux récupérer directement, ouvrir mon fichier. Pour cela, je dois donc récupérer le chemin complet de mon fichier.

    neguib a dit:
    nom_fenetre Est-ce la classe contenue dans une dll, est-ce une classe ecrite dans un fichier .cs
    En fait, nom_fenetre est tout simplement le nom de mon fichier.

    dev01 a dit:
    peux tu nous donner le résultat que tu obtiens avec FullName stp ?
    Voilà, le chemin que me donne l'instruction FullName :

    "C:\Documents and Settings\501270495\My Documents\interface_graphique\Visual Studio Projects\outil_instrumentation\Outil_instrumentation2_0\Outil_instrumentation2_0\bin\Debug\Port 2\vwci_Message\06_04_2006 17h28min01"
    C'est ça que je trouve bizarre, c'est comme si les fichiers se trouvaient dans le répertoire d'exécution de mon programme... Je ne comprends pas, en réalité, ils ne se trouvent pas là.

  7. #7
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Citation Envoyé par guillaume16

    Voilà, le chemin que me donne l'instruction FullName :

    "C:\Documents and Settings\501270495\My Documents\interface_graphique\Visual Studio Projects\outil_instrumentation\Outil_instrumentation2_0\Outil_instrumentation2_0\bin\Debug\Port 2\vwci_Message\06_04_2006 17h28min01"
    C'est ça que je trouve bizarre, c'est comme si les fichiers se trouvaient dans le répertoire d'exécution de mon programme... Je ne comprends pas, en réalité, ils ne se trouvent pas là.
    Ils se trouve apparement dans le repertoire d'execution de la machine. Tu as peut être une copie ailleurs, mais le programme ne semble pas travailler sur la copie que tu souhaites ...

  8. #8
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    En fait, je n'ai pas de fichier qui ait ce nom dans le répertoire d'exécution de la machine.

    Mais apparamment, si le fichier n'existe pas, le chemin retourné est répertoire courant+nom fichier.

    J'ai un petit doute maintenant. Plus simplement, ce que je veux faire, c'est une recherche dans un sytème de fichier d'un certain fichier (nom du fichier uniquement). Est-ce possible avec le frameWork 2.0 où dois-je parcourir tout mon système de fichier par code?

  9. #9
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par guillaume16
    En fait, je n'ai pas de fichier qui ait ce nom dans le répertoire d'exécution de la machine.

    Mais apparamment, si le fichier n'existe pas, le chemin retourné est répertoire courant+nom fichier.
    Le plus simple pour vérifier ça c'est d'utiliser la propriété Exists ...

    Citation Envoyé par guillaume16
    J'ai un petit doute maintenant. Plus simplement, ce que je veux faire, c'est une recherche dans un sytème de fichier d'un certain fichier (nom du fichier uniquement). Est-ce possible avec le frameWork 2.0 où dois-je parcourir tout mon système de fichier par code?
    il faut l'implémenter par code je crois

  10. #10
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Merci, j'implémente donc la recherche de fichier par code. Ils auraient peut-être pu développer des fonctionnalités de recherche de fichiers dans le framework, je pense que c'est assez fréquemment utilisé, non?

    A+.

  11. #11
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Citation Envoyé par guillaume16
    Merci, j'implémente donc la recherche de fichier par code. Ils auraient peut-être pu développer des fonctionnalités de recherche de fichiers dans le framework, je pense que c'est assez fréquemment utilisé, non?

    A+.
    http://faqcsharp.developpez.com/?page=file#file_dir

  12. #12
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut


    hum et ça passe sur un lecteur entier ?

  13. #13
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Citation Envoyé par dev01


    hum et ça passe sur un lecteur entier ?
    of course
    Faut tester avant de poser la question sinon

  14. #14
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    mais après il faut la rappeller pour chaque entrée qui est un repertoire.
    Peut ^tre une future Q/R

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

Discussions similaires

  1. Comment récupérer le chemin complet SANS le nom de la page HTML ?
    Par Zebulon777 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/09/2010, 11h17
  2. Réponses: 24
    Dernier message: 29/03/2010, 10h12
  3. Souris - Récupérer le chemin complet d'un fichier
    Par CLion dans le forum Windows
    Réponses: 2
    Dernier message: 04/04/2009, 20h56
  4. Réponses: 2
    Dernier message: 04/08/2007, 21h58
  5. récupérer le chemin complet d'un fichier
    Par Mounr dans le forum Langage
    Réponses: 1
    Dernier message: 02/03/2007, 14h20

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