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 :

le ou dans une condition


Sujet :

C#

Vue hybride

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Par défaut le ou dans une condition
    Bonjour,
    j'ai fait un test mais marche pas , probablement ya une erreur quelques part , merci pour vos interventions.

    voici le code :

    index = file.Name.IndexOf("_events || _monthly");
    if (index >= 0)

    {
    File.Copy(directory + @"\" + file.Name.ToString(), FinalDirectory + @"\" + file.Name.ToString(), true);
    }

    Mon code marche bien quand je mets que (_events dans la condition ) mais quand je rajoute (_monthly) à la condition ca marche pas.
    C bien le (||) qu'il faut faire , je vois pas l'erreur tout en sachant que ma condition doit verifier l'existence de l'une des deux .

    merci

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Et où as tu été pecher que la syntaxe de recherche dans une chaine était la syntaxe C# ?

    Le indexOf te cherche l'occurence d'une chaine, or ici il cherche la chaine que tu as spécifié, en l'occurence "_events || _monthly".

    Il n'y a pas d'opération OR logique dans ton code, juste une chaine qui contient "||" entre autres.

    Tu peux faire plusieurs IndexOf.

  3. #3
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Par défaut
    Bonjour,

    a mon avis tu devrais plutôt faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (file.Name.IndexOf("_events") >= 0 || file.Name.IndexOf("_monthly") >= 0)
     
    {
    File.Copy(directory + @"\" + file.Name.ToString(), FinalDirectory + @"\" + file.Name.ToString(), true);
    }
    La prochaine fois pense à mettre ton code entre les balises CODE
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Par défaut Résolu !
    Citation Envoyé par jsd03 Voir le message
    Bonjour,

    a mon avis tu devrais plutôt faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (file.Name.IndexOf("_events") >= 0 || file.Name.IndexOf("_monthly") >= 0)
     
    {
    File.Copy(directory + @"\" + file.Name.ToString(), FinalDirectory + @"\" + file.Name.ToString(), true);
    }
    La prochaine fois pense à mettre ton code entre les balises CODE

    Merci bcp .
    ca marche bien

  5. #5
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Par défaut
    Juste pour ajouter un petit truc.

    Le fait de mettre >= 0 dans ta condition va prendre tout les fichiers même si ils ne contiennent pas "_events" ou "_monthly". Tu devrais le remplacer par > 0 non ?
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par jsd03 Voir le message
    Juste pour ajouter un petit truc.

    Le fait de mettre >= 0 dans ta condition va prendre tout les fichiers même si ils ne contiennent pas "_events" ou "_monthly". Tu devrais le remplacer par > 0 non ?
    Non.
    Si la chaine est au début, l'index est 0. Si elle n'existe pas l'index est -1. Donc ">= 0" c'est correct.

  7. #7
    Rédacteur
    Avatar de jsd03
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Août 2008
    Messages : 1 221
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Non.
    Si la chaine est au début, l'index est 0. Si elle n'existe pas l'index est -1. Donc ">= 0" c'est correct.
    A oui correct j'ai craqué
    Google est ton ami mais ton voisin aussi

    Modérateur BI - Responsable Talend
    Mes tutoriels - FAQ Talend - FAQ SQL*Plus

    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Suivez @Developpez sur twitter !

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Par défaut
    Oui je vois mais au début j'ai declaré :

    int index = 0;du coup je devrais faire >=0
    mais la ca marche aussi , et ta raison c unutil de la laisser

    la chaine est à la fin.

Discussions similaires

  1. [JSP] Inclusion dans une condition d'un fichier jsp
    Par Fmassiera dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 07/02/2006, 20h14
  2. [ms sql server 2000] top 1 dans une condition de jointure ?
    Par sylvkin dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 18/10/2005, 17h10
  3. Problème dans une condition
    Par gibet_b dans le forum Linux
    Réponses: 4
    Dernier message: 31/05/2005, 10h19
  4. Fonction MAX dans une condition WHERE
    Par borgfabr dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/10/2004, 16h06
  5. Réponses: 2
    Dernier message: 24/06/2004, 09h13

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