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 :

Récupérer répertoire courant


Sujet :

C

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut Récupérer répertoire courant
    Bonjour,

    j'essaie de récupérer le repertoire courant de mon application.

    j'ai trouvé ce ceci

    C#
    string path = Directory.GetCurrentDirectory();
    bon déjà en C string n'existe pas, n'est ce pas? après en tentant d'adapter j'ai essayé un

    char path[] = Directory.GetCurrentDirectory();
    mais il connait pas "Directory"...

    2 petites questions :

    - comment je récupère de répertoire ( )
    - c'est quoi C# ?? pas C?

  2. #2
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    je sais que ça marche sous windows, mais sous linux je sais pas

    NAME
    getcwd - get the pathname of the current working directory

    SYNOPSIS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #include <unistd.h>
     
    char *getcwd(char *buf, size_t size);

    C# : C sharp, langage de micro$oft

  3. #3
    Membre Expert Avatar de zooro
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2006
    Messages : 921
    Par défaut
    Citation Envoyé par Elstak
    - c'est quoi C# ?? pas C?
    http://fr.wikipedia.org/wiki/C_sharp

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut
    hep,

    merci

    juste le : #include <unistd.h>

    il est inconnu chez moi mais bon de toute facon :

    char *_getcwd(char *buffer,int maxlen);

  5. #5
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 943
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 943
    Par défaut
    Sous Windows, GetCurrentDirectory (#include <windows.h>).
    Commentaire de MSDN pour getcwd :
    Citation Envoyé par MSDN
    This POSIX function is deprecated beginning in Visual C++ 2005. Use the ISO C++ conformant _getcwd instead.
    Exemple pour _getcwd :
    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
    // crt_getcwd.c
    // This program places the name of the current directory in the 
    // buffer array, then displays the name of the current directory 
    // on the screen. Passing NULL as the buffer forces getcwd to allocate
    // memory for the path, which allows the code to support file paths
    // longer than _MAX_PATH, which are supported by NTFS.
     
    #include <direct.h>
    #include <stdlib.h>
    #include <stdio.h>
     
    int main( void )
    {
       char* buffer;
     
       // Get the current working directory: 
       if( (buffer = _getcwd( NULL, 0 )) == NULL )
          perror( "_getcwd error" );
       else
       {
          printf( "%s \nLength: %d\n", buffer, strlen(buffer) );
          free(buffer);
       }
    }
    A remarquer la grosse erreur C de programmation (manque le return 0 !).
    [edit] peut-être qu'en C++ il n'est pas nécessaire ??? [/edit]
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut
    yup, c'est l'exemple que j'ai trouvé apres en cherchant getcwd

    sinon qu'est ce qu'ils entendent par deprecated? j'ai déjà vu ca 2/3 fois il me semble...

  7. #7
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 943
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 943
    Par défaut
    deprecated signifie qu'il ne faut plus l'utiliser dans les nouveaux codes !
    Pourquoi ? je ne saurais répondre, peut-être quelqu'un sur ce forum ?
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut
    ok merci
    pourquoi? bah surement qu'ils ont trouvé mieux depuis

  9. #9
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 943
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 943
    Par défaut
    Plus "secure" sans doute
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  10. #10
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 399
    Par défaut
    Là, ce n'est pas le même warning que pour "secure".
    Ce que je ne sais pas, c'est d'où ils sortent leur "ISO C++ conformant", ni pourquoi ils affichent également ce warning en C...

    En attendant, j'ai trouvé comment on désactive ça: Il suffit de définir _CRT_NONSTDC_NO_WARNINGS (ou _CRT_NONSTDC_NO_DEPRECATE si on a un SDK trop vieux) avant d'inclure les fichiers d'en-tête ou dans les options du projet.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #11
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    "deprecated" c'est pas copié sur ce qui se passe avec la norme Fortran ?

    c'est à dire qu'il y a 4 stades en Fortran :

    • En usage
    • Deviendra obsolète à la prochaine édition de la norme (deprecated)
    • Obsolète (plus supporté)
    • n'existe plus (deleted)


    Si donc on utilise une fonction ou une forme "deprecated", ça veut dire qu'à la prochaine sortie de norme elle ne sera plus supportée.

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

Discussions similaires

  1. [XSLT]Récupérer le nom du répertoire courant
    Par henri93 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 13/01/2014, 14h58
  2. Quizz: Récupérer un fichier texte dans le répertoire courant?
    Par bilou_12 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 26/03/2012, 00h39
  3. Récupérer répertoire courant.
    Par Moustike dans le forum Débuter
    Réponses: 4
    Dernier message: 15/04/2011, 10h43
  4. récupérer le nom du répertoire courant avec un tFileList
    Par coulio dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 29/03/2010, 18h45
  5. [JSP] Récupérer le répertoire courant
    Par dafly dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 10/06/2004, 12h01

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