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

Langage Perl Discussion :

handle de répertoire


Sujet :

Langage Perl

  1. #1
    Membre régulier Avatar de Ickou
    Inscrit en
    Avril 2005
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 174
    Points : 108
    Points
    108
    Par défaut handle de répertoire
    Salut !

    je comprend pas ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    opendir DIR, $dossier or die "Le dossier $dossier n'existe pas !\n";
    if(-e $fichier){} else {die "Le fichier $fichier existe pas!\n";}
    close DIR;
    le fichier $fichier se trouve dans le répertoire $dossier.
    Apparemment mon test ne se fait pas dans le répertoire $dossier mais dans le répertoire où se trouve le programme.....

    Quelle est l'erreur dans ma syntaxe :


    Merci !
    -------------------
    Ickou

  2. #2
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    Je ferais plutot :
    if(-e $dossier.'/'.$fichier){} else {die "Le fichier $fichier existe pas!\n";}

    Bon courage !
    Sohnic
    http://www.noctinfo.fr/

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
    (")-(")

  3. #3
    Membre régulier Avatar de Ickou
    Inscrit en
    Avril 2005
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 174
    Points : 108
    Points
    108
    Par défaut
    oui c'est vrai ton truc marche

    Mais j'aimerai quand même avoir la réponse à ma question pour la 8) perl culture 8)
    -------------------
    Ickou

  4. #4
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Pourtant c'est logique. Le fait d'avoir un "pointeur" (DIR) sur un dossier ne place pas ton script dans ce dossier.
    Pour tester l'existence de $fichier, il lui faut donc le path.
    Le fait est que n'ayant pas connaissance de ton script, je me suis posée la question de savoir pourquoi tu faisais un opendir, classiquement utilisé pour lister les fichiers qu'il contient... donc qui existent. Tu n'as absolument pas besoin de faire ça pour tester l'existence d'un fichier quelque part, même dans un dossier externe à ton script.

    J'espère que ça répond à tes interrogations.
    S.
    http://www.noctinfo.fr/

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
    (")-(")

  5. #5
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Pour complèter la réponse de sonhic, tu as mélangé deux choses différentes :

    - opendir/closedir qui servent à parcourir les entrées d'un répertoire avec la commande readdir sur le handle ainsi créé.

    - les opérateurs d'existence/détection du type de fichier : -e -f -d -l ... à qui il faut préciser le chemin complet (absolu ou relatif, comme on veut) du fichier à tester.

    A la limite, le mélange peut se faire lorsqu'il s'agit de faire un -d $dossier, suivi d'un opendir dessus s'il existe, pour éviter l'exception lancée par le die ...
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  6. #6
    Membre régulier Avatar de Ickou
    Inscrit en
    Avril 2005
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 174
    Points : 108
    Points
    108
    Par défaut
    merci
    -------------------
    Ickou

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

Discussions similaires

  1. Répertoire caché
    Par KUBITUS dans le forum Delphi
    Réponses: 30
    Dernier message: 13/04/2007, 07h19
  2. sélectionner un répertoire
    Par estelle dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 02/09/2005, 04h53
  3. Tjours mon pb de date de répertoire
    Par mjacque dans le forum Langage
    Réponses: 5
    Dernier message: 30/08/2002, 09h50
  4. pb de récup de handle à partir d'une dll
    Par yokito dans le forum Langage
    Réponses: 2
    Dernier message: 20/08/2002, 12h29
  5. pb de handle en C
    Par deedje dans le forum C
    Réponses: 3
    Dernier message: 21/06/2002, 16h19

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