begin process at 2010 02 09 21:18:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Au secours

 > 

Switch case Bug ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Switch case Bug ?

mardi 12 avril 2005 à 14:25:33 | Switch case Bug ?

bip98

Je comprends vraiment pas..

j'ai ce code:

 foreach(char c in Text_affiche)
   {
     fichier=@"D:\TIP_Info\Shema_images\Lettre";
     StringBuilder ajouter = new StringBuilder(fichier);

     switch(c)
      {
     case 'a' :
     case 'A' : ajouter.Append(@"\a.xml");
                    fichier=ajouter.ToString();
                    Fonction_lettre_insert();
                    break;

     case 'b':
     case 'B':  ajouter.Append(@"\b.xml");
                    fichier=ajouter.ToString();
                    Fonction_lettre_insert();
       break;

ect.... jusqu'à Z...

    default : break;
  }

Mon problème c'est que quand je met par exemple "3" donc un carractère qui n'existe pas.. il devrait aller sur default.. mais il va toujours sur la lettre "t" la 20ème de l'alpha... pourquoi ??



mardi 12 avril 2005 à 15:02:28 | Re : Switch case Bug ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
J'ai essayé ceci, et il m'affiche bien "defaut" :

                switch('3')
                {
                    case 'a' :
                    case 'A' :
                        MessageBox.Show("a");
                        break;

                    case 'b':
                    case 'B': 
                        MessageBox.Show("b");
                        break;

                    case 't':
                    case 'T': 
                        MessageBox.Show("t");
                        break;

                    default :
                        MessageBox.Show("defaut");
                        break;
            }


Essaie de faire des tests avec d'autres caracteres alpahnumériques, pour t'aider a situer le probleme

Mx
mardi 12 avril 2005 à 15:02:55 | Re : Switch case Bug ?

bip98

Encore une question sur le sujet un peu louche !

quand j'écris rien dans mon texte box et que je fais:
Text_affiche=TextBox.ToString()

et après j'affiche:
Text_affiche.Length

il me met: 36

donc il commence à 36 !! pourquoi ???? il devrait être à 0 !

mardi 12 avril 2005 à 15:30:21 | Re : Switch case Bug ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Non c'est normal, as tu regardé ce que te rapportait TextBox.ToString(); ???
Essaie pour voir.

Je crois que ce que tu veux faire, c'est TextBox.Text.ToString(); et là la propriété Length te rapportera bien 0.

Mx
mardi 12 avril 2005 à 15:37:03 | Re : Switch case Bug ?

MorpionMx

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Pas besoin du ToString, suis-je bete

Text_affiche = TextBox.Text

Mx
mardi 12 avril 2005 à 16:06:01 | Re : Switch case Bug ?

bip98

.... je suis trop ....

merci !!

Il fallait bien faire: Text_affiche = TextBox.Text.ToString(); <-- le ToString oubliger de le mettre quand même..
au lieu de : Text_affiche=TextBox.ToString();

Et ca règle même mon problème de switch du coup !!!
mardi 12 avril 2005 à 18:48:23 | Re : Switch case Bug ?

sebseb42

Excuse moi, ca ne serait pas mieux de faire ceci :

foreach(char c in Text_affiche)

{
    fichier = @"D:\TIP_Info\Shema_images\Lettre";
    StringBuilder ajouter = new StringBuilder(fichier);

    ajouter.Append(@"\" + c.ToString().ToLower() + ".xml");
    fichier=ajouter.ToString();
    Fonction_lettre_insert();
}

Cette ligne :

    ajouter.Append(@"\" + c.ToString().ToLower() + ".xml");

peut-etre replacer par :

    ajouter.Append(string.Format(@"\{0}.xml", c.ToString().ToLower());

ou encore par :

    if (c >= 'A' && c <= 'Z')
       c += 32;    // mise en minuscule
    ajouter.Append(@"\" + c + ".xml");
    // ou
    ajouter.Append(string.Format(@"\{0}.xml", c);





Cette discussion est classée dans : fichier, case, ajouter, lettre, switch


Répondre à ce message

Sujets en rapport avec ce message

Ajouter des données dans un fichier access [ par beuz84 ] J'utilise une base de données access, j'ai dessus trois tablesJe veux inserer des noms dans ma premiere table, que j'aurais préalablement ecris dans u ajouter, modifier un fichier xml [ par tmcuh ] bonjour, je débute un peu dans le xml et j'aurais aimé modifier des données présentes dans un clé (avec paramètres), rajouter des nouvelles clés, bref ajouter un menu dans l'explorateur [ par warenbe ] bonjour a tousje souhaite rajouter un menu lorsque l'on clique droit sur un fichier dans l'explorateur windows... (à la maniere de winrar par exemple. Ajouter une police [ par Baguauda ] Bonjour,la question peu sembler etre tres bête mais je dois avouer que je calle.J'ai un fichier .ttf afin de pourvoir ecrire en symblogie 39, le probl Ajouter automatiquement numéro de version au fichier msi généré [ par Flashy Warrior ] Bonjour,J'ai fini de développer la première version de mon application, et j'ai créé un projet pour générer un package d'installation (fichier Setup.e probleme switch case [ par yohan49 ] salut les gars , je voudrais savoir comment faire un switch quand le chois est multibpleswitch (var){case 0:........breack;case 1 ou 2:.........breack switch, c# [ par manou_slai ] slt,je veux utiliser switch avec une chaine de caractèresj'ai tapé ce code :switch (s){ case "0": op = "Nouveau"; case "1": op = "Renouvel [Déplacé] ajouter une police de caratères [ par nclscartman ] Salut à tous, Je suis entrain de développer un Site Web avec le framework 2.0 c#, je voudrais être capable d'utiliser un fichier .ttf ajouté à mon pro Mieux que le Switch [ par Michou69004 ] BonjourJe voudrais savoir si quelqu'un connaissait un moyen plus rapide que le switch : Je m'explique :   Switch (n) Case 1: Case 2: Case 3: Case


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales