Chaîne d'entrée n'était pas dans un format correct en double.Analyser
Je suis nouveau en C#. Je suis en train de faire une calculatrice, mais l'erreur suivante s'est produite:
Chaîne d'entrée n'était pas dans un format correct.
C'est le résumé du code:
double num1, num2, result;
private void button14_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = String.Empty;
num2 = double.Parse(textBox1.Text); **//ERROR OCCURED HERE**
result = num1 - num2;
}
private void button13_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
textBox1.Text = String.Empty;
num2 = System.Double.Parse(textBox1.Text); **//ERROR OCCURED HERE**
result = num1 + num2;
}
Comment convertir une chaîne de caractères de type double?
OriginalL'auteur Arjun | 2013-09-27
Vous devez vous connecter pour publier un commentaire.
- Ce que vous essayez d'atteindre avec ce code? Il semble que votre algorithme est faux.
Comme les autres ont dit, ce code
va lever une Exception, car une chaîne vide ne peut pas être convertie en Double!
Donc, je me demandais pourquoi avez-vous réinitialiser votre domaine. J'y ai pensé pendant un certain temps, et peut-être que j'ai obtenu ce que vous essayez de faire. Disons que vous tapez un nombre dans TextBox1. Ensuite, vous appuyez sur le bouton "-" pour soustraire et puis vous voulez entrer dans le deuxième numéro pour afficher le résultat. Est-ce le cas? Si c'est le code que vous avez écrit ne va pas attendre pour votre prochaine entrée!
En fait, lorsque vous cliquez sur le bouton, c'est juste exécute toutes les lignes que vous avez écrit. J'aimerais écrire quelque chose comme ceci à la place.
EDIT: Si la chaîne est vide, cela va toujours de lancer des Exceptions, j'ai donc ajouté un contrôle. Si la chaîne est vide, la valeur est à zéro.
OriginalL'auteur Vereos
Rappelez-vous aussi que la méthode d'analyse s'appuie sur la culture de votre système d'exploitation pour effectuer la conversion, alors essayez de modifier votre code pour
Vous pouvez également envisager d'utiliser le
méthode pour une meilleure gestion des exceptions.
OriginalL'auteur user65439
Depuis que vous avez nettoyé la zone de texte sur la ligne précédente, l'analyse de la conversion échoue.
Comment la convertir en Chaîne de caractères.Vide à Double?
La façon de faire n'est pas droit.
Par exemple, si le bouton "+" est cliqué, vous avez pour vérifier si il y avait déjà un certain nombre. Si si,, ajouter les numéros et d'afficher le résultat:
num != null
? ettextBox1.Text = num;
? sera cette compilation?OriginalL'auteur Nadeem_MK
Semble
num2
valeur doit être récupérées à partir detextbox2
pastextbox1
(réglage textbox1.texte à vide et d'essayer de l'analyser pour doubler à nouveau)Aussi, ne pas utiliser
Convert.ToDouble(textBox1.Text)
directement. si les utilisateurs de type non des valeurs numériques de votre code panne. vérifiez d'abord si c'est un numéro de série valide, utilisez toujoursdoube.TryPrase()
OriginalL'auteur Kurubaran
Votre code semble difficile de comprendre qui est l'utilisation de button_13 et button_14;
Je vais supposer que vous essayez de faire ceci:
Ou vous pouvez utiliser des Doubles.Analyser dans mon Convertir.ToDouble
Cela dépend de votre opération, mais je suis visualisation
comment faire de l'opération d'ajout, vous pouvez modifier et de modifier ce
dépend de votre opération
OriginalL'auteur CMinor