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 :

Détection de fichier


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Par défaut Détection de fichier
    bonjour à tous

    j'ai fait ce script :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            my $fichier = "/toto.txt";
     
                    open (DESC, "/toto.txt");
                    my($m_description);
                    while(<DESC>)
                            {
                            if (/^DESCRIPTION\s*:\s*(.+)/i){$m_description=$1;}
                            print "ok - fait \n";
                            }
                            close (DESC);
     
     
    print "$m_description";
    ]


    qui retourne depuis le fichier toto.txt l'argument de la ligne contenant en son début la chaine DESCRIPTION.
    Ce script fonctionne, mais si je rajoute un test d'existence du fichier :

    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
            my $fichier = "/toto.txt";
            if (-f $fichier) {                                        # -f ou -e, même resultat final
                    open (DESC, "/toto.txt");
                    my($m_description);
                    while(<DESC>)
                            {
                            if (/^DESCRIPTION\s*:\s*(.+)/i){$m_description=$1;}
                            print "ok - fait \n";
                            }
                            close (DESC);
            }
            else {
                    print "rien";
                    $m_description = "Fichier toto.txt absent";
            }
     
    print "$m_description";
    il affiche bien "ok - fait", donc le test est réussi, mais il n'affiche plus le contenu de la variable $m_description (ou celle-ci est vide) !!!

    Merci de votre aide

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Tu variables $m_description est locale à ton bloc if, donc à l'extérieur de ce bloc, elle n'existe plus (donc, elle est undef).

    Il faut déclarer ta variables my avant l'instruction if, dans la portée du bloc de code qui englobe le print.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Par défaut
    merci beaucoup, ça fonctionne !

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

Discussions similaires

  1. [LV2009] Conflit de détection dernier fichier créé
    Par Super2006 dans le forum LabVIEW
    Réponses: 0
    Dernier message: 12/12/2011, 12h53
  2. projet en java de détection de fichiers plagiés via le Web
    Par sabil el houda dans le forum Applets
    Réponses: 3
    Dernier message: 25/03/2010, 16h14
  3. Script détection nouveau fichier dans répertoire
    Par Jimmy Jones dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 03/02/2010, 00h12
  4. Détection de fichier avec un nom aléatoire
    Par ealphonsine dans le forum kettle/PDI
    Réponses: 2
    Dernier message: 13/11/2008, 19h36
  5. Détection format fichier
    Par YvesCa dans le forum C++
    Réponses: 17
    Dernier message: 04/12/2007, 13h35

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