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 :

Probleme de convertion string en double dans un if (relier avec un fichier txt) [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif Avatar de Frokos
    Homme Profil pro
    Programmeur/analyste
    Inscrit en
    Octobre 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur/analyste

    Informations forums :
    Inscription : Octobre 2017
    Messages : 17
    Par défaut Probleme de convertion string en double dans un if (relier avec un fichier txt)
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     static double DonsContact()
            {
     
                double donsContact = 0;
                bool donsValide = false;
                do
                {
                    Console.WriteLine();
                    Console.Write(" Donnez-moi le montant du dons de l'utilisateur: ");
                    //recuperation du saisie du donateur
                    donsContact = Convert.ToDouble(Console.ReadLine());
                    if ((donsContact < 0.01) && (donsContact > 1000))
                    {
                        Console.WriteLine();
                        Console.WriteLine(" Le montant du dons dois etre au maximum 1000$.");
                    }
                    else
                    {
                        //verifier afin de que le id n'exite pas dans notre ficher
                        if (VerifierDonsContact(donsContact))
                        {
                            donsValide = true;
                        }
                    }
                    while (!donsValide)
                    {
                        //retour de la valeur saisie a la methode NouveauDonateur
                        return donsContact;
                    }
                }
     
                while (!donsValide);
                {
                    //retour de la valeur de saisie a la methode NouveauDonateur
                    return donsContact;
                }
            }
     
            static bool VerifierDonsContact(double donsContact)
            {
                //declaration des variables utilisees par la methode.
                string ligne = null;
                string[] contact;
                //creation d'un lecteur pour la lecture des informations du ficher Contacts.txt.
                StreamReader lecture = new StreamReader(nomFichier);
                //creation de la boucle
                while ((ligne = lecture.ReadLine()) != null)
                {
                    contact = ligne.Split(',');
                    // Si id saisie existe
                    if (contact[7] = donsContact) <======(contact[7] = string et donsContact = double )================ PROBLEME ==========================
                                                                                                               ** je veux lire le contact[7] en double !! 
                    {
                        //affichage des information trouver
                        Console.WriteLine();
                        Console.WriteLine(" Un contact portant ce numero d'identification");
                        Console.WriteLine(" existe deja dans la liste de vos contact.");
                        Console.WriteLine(" Voici son enregistrement.");
                        Console.WriteLine();
                        Console.WriteLine($" ID du contact : {contact[0]}");
                        Console.WriteLine($" Nom du contact : {contact[1]}");
                        Console.WriteLine($" Prenom du contact : {contact[2]}");
                        Console.WriteLine($" Adresse du contact du contact : {contact[3]}");
                        Console.WriteLine($" Numero de telephone du contact : {contact[4]}");
                        Console.WriteLine($" Type de la carte du contact : {contact[5]}");
                        Console.WriteLine($" Date d'expiration du contact : {contact[6]}");
                        Console.WriteLine($" Dons totaux du contact : {contact[7]}$");
                        Console.WriteLine();
                        //si le ID saisie est trouver dans le fichier Contact.txt
                        return false;
                    }
                }
                lecture.Close();
                //si ID saisie n'est pas trouver dans le ficher Contacts.txt
                return true;
            }

  2. #2
    Membre Expert
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Par défaut
    Le test ne passera jamais, aucun nombre n'est à la fois inférieur à 0.01 et à la fois supérieur à 1000

  3. #3
    Membre actif Avatar de Frokos
    Homme Profil pro
    Programmeur/analyste
    Inscrit en
    Octobre 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur/analyste

    Informations forums :
    Inscription : Octobre 2017
    Messages : 17
    Par défaut studen
    Que veux tu dire par rapport … le nombre que je lit est le nombre que je donne , parle tu de la charte des nombres ??

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 470
    Par défaut
    Bonjour,
    Comme tu ne donnes aucune explication dans ton message, il fallait deviner que la question se trouvait loin dans le code…
    Sehnsucht t'explique à raison que le test ligne 12 ne pourra jamais être vérifié par aucun nombre.
    Sinon pour ton problème qui finalement se trouve ligne 51, il faut faire une conversion de type. Une petite recherche sur ton moteur préféré devrait te donner la solution.

    Accessoirement, une procédure qui s'appelle VérifieQuequeChose, qui visiblement vérifie l'existence d'une donnée, et qui renvoie false quand la donnée existe me parait pour le moins bizarre. Habituellement c'est l'inverse, puisqu'elle est sensée répondre à la question: est-ce que la donnée existe ? Oui (true) elle existe, non (false) elle n'existe pas.

    Tatayo.

    P.S. si tu veux augmenter tes chances d'avoir des réponses, il conviendrait que tu expliques clairement ton problème.
    Et un petit bonjour, merci… ne fait pas de mal non plus.

  5. #5
    Max
    Max est déconnecté
    Expert confirmé

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Par défaut
    Citation Envoyé par Frokos Voir le message
    Que veux tu dire par rapport … le nombre que je lit est le nombre que je donne , parle tu de la charte des nombres ??
    Lis ton test if ((donsContact < 0.01) && (donsContact > 1000)) en mode algo et à haute voix :

    SI donsContact est inférieur à 0,01 ET donsContact est supérieur à 1000 ALORS
    Rien ne te choque ?

  6. #6
    Membre actif Avatar de Frokos
    Homme Profil pro
    Programmeur/analyste
    Inscrit en
    Octobre 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur/analyste

    Informations forums :
    Inscription : Octobre 2017
    Messages : 17
    Par défaut reponse
    DSL. de manque d'information et MERCI j'ai trouver la reponse .

    Nom : CapturePProblemeR.PNG
Affichages : 229
Taille : 46,6 Ko

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

Discussions similaires

  1. Convertion String to Date dans une requete
    Par kasdo dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 14/10/2015, 21h19
  2. Conversion d'un String en Double dans une JSP
    Par demcoul dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 18/04/2012, 18h00
  3. [.Net 2.0] Convertion String^ en double
    Par caradhras dans le forum Débuter
    Réponses: 2
    Dernier message: 04/08/2009, 11h03
  4. Convertion String en double ou float
    Par superjaja dans le forum C#
    Réponses: 6
    Dernier message: 31/12/2007, 13h00
  5. probleme d'utilisation d api c dans des controle forms avec wpf
    Par ZashOne dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 24/07/2007, 12h04

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