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 :

Créer une boucle "Do-While"


Sujet :

C#

  1. #1
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut Créer une boucle "Do-While"
    Bonjour à tous,
    J'ai créé un programme dans lequel on copie des fichiers à partir d'éléments présents dans une listbox (ajoutés grâce à un openFileDialog) dans un dossier définit plus tôt par un FolderBrowserDialog :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
                // Item 1 dans le string rom1 (avec path)
                string rom1 = listBox1.Items[1].ToString();
     
                // Item 1 dans le string name (sans path)
                string name1 = System.IO.Path.GetFileName(rom1);
     
                // Ajout d'un "\" dans le string name
                string name12 = @"\" + name1;
     
                // Copy !
                File.Copy(rom1, SDcard+name12);
    Le seul soucis est qu'avec cette méthode je dois répéter cette manipulation autant de fois qu'il y a d'éléments dans ma listbox...
    Ne serait-il pas possible de créer une boucle Do-While permettant de faire cette manipulation automatiquement jusqu'à ce que la variable soit égalle au "listBox1.Items.Count" ?
    Merci d'avance à tout ceux qui auraient une ptite idée !

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    ouahou !


    et tu n'as pas eut envie d'apprendre la programmation plutot que de te lancer dans le vide ????

    biensur que ca existe, et c'est la base ! voir meme le début de la base !


    je fais du vb et je n'ai pas de lien vers des tuto c#
    mais y en a plein sur developpez.com
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut
    Merci pour ta réponse
    C'est partit alors

  4. #4
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Ce qui m'étonne c'est que connaissant apparement l'existance du Do-While tu puisse poser une telle question !

    Dans ton cas c'est plutot un for-next que tu a besoin

    Et certainement un petit manuel de programmation;

  5. #5
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Par défaut
    Tu peux faire un foreach sur ta listbox pour automatiser la tache

  6. #6
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut
    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
    private void button3_Click(object sender, EventArgs e)
            {
                string SDcard = @folderBrowserDialog1.SelectedPath.ToString();
                int lol1 = listBox1.Items.Count;
                progressBar1.Value = 100 / lol1;
                string lol2 = lol1.ToString();
                int var = -1;
                for (int i = 1; i <= lol1; i++)
                {
                    var = var + 1;
                    string roms = listBox1.Items[var].ToString();
                    string roms2 = Path.GetFileName(roms);
                    string roms3 = @"\" + roms2;
                    File.Copy(roms, SDcard + roms3);
                    progressBar1.Increment(100 / lol1);
                }
            }
    Aprés quelques heures de bidouillage, ça marche
    Comme quoi les coups d'fouets :p
    Merci à vous tous

  7. #7
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Oui mais bien comprendre les concept
    des for {}
    des while{}
    des if ()

    C'est pas mal non plus

    un foreach peut etre tres pratique mais ne dois pas forcement ni systématiquement remplacer un for next

  8. #8
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Par défaut
    oui mais je pense que le foreach peut être efficace dans son cas... dans la mesure ou aucun ajout ou suppression n'est effectué durant sa boucle...

    maintenant je me trompe peut être

  9. #9
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    oui mais je pense que le foreach peut être efficace dans son cas... dans la mesure ou aucun ajout ou suppression n'est effectué durant sa boucle...

    maintenant je me trompe peut être
    Non non tu a raison mais je souhaitais rappeller l'existence du for next que beaucoup de debutant POO oublient en jonglant parfois aves un iterateur pour emuler un for next

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

Discussions similaires

  1. [VBA-E] PRobleme avec une boucle DO..LOOP WHILE
    Par AliochaBada dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 31/07/2006, 01h04
  2. [PHP-JS] Comment créer une boucle avec des headers
    Par djinnwatcher dans le forum Langage
    Réponses: 10
    Dernier message: 17/07/2006, 15h48
  3. Comment créer une boucle ?
    Par kikica dans le forum Langage
    Réponses: 5
    Dernier message: 15/03/2006, 21h02
  4. [XSLT]créer une boucle
    Par fraoustin dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 11/01/2005, 14h13

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