Maison >développement back-end >C++ >Comment corriger la 'chaîne d'entrée n'était pas dans un format correct' dans une calculatrice C #?
C # Calculatrice "Format de chaîne d'entrée incorrect" Solution d'erreur
En C #, essayer d'analyser la chaîne non valide en type de données numériques peut entraîner une erreur incorrecte "de la chaîne d'entrée". Cette erreur se produit lorsque la chaîne passée à la méthode ne répond pas au format attendu du type de données cible.
Dans un code de calculatrice C # donné, l'erreur s'est produite car la méthode Parse
est utilisée dans le constructeur pour convertir la chaîne vide (récupérée de la zone de texte) en entier. Par défaut, la zone de texte est vide lors de la création d'une fenêtre.
Solution: Parse
Afin de résoudre ce problème, le code doit mettre à jour les valeurs de et dans le bouton cliquez sur l'événement, plutôt que dans le constructeur, car la zone de texte contient des valeurs significatives dans L'événement de clic du bouton. De plus, la méthode doit être utilisée pour traiter la chaîne peut ne pas contenir un entier efficace.
Il ne lancera pas d'exception pour faciliter la gestion.
a
Ce qui suit est le fragment de code modifié: b
TryParse
TryParse
Cette modification changera et
et
, ce qui est plus conforme au style de code de C # moderne, et spécifie clairement le type de paramètres de sortie. Plus important encore, il ajoute un espace réservé<code class="language-csharp">// ... (不变的代码) public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { if (Int32.TryParse(textBox1.Text, out int a)) { // 执行加法运算 } else { // 处理无效输入,例如显示错误消息 } if (Int32.TryParse(textBox2.Text, out int b)) { // 执行加法运算 } else { // 处理无效输入,例如显示错误消息 } add(); result(); } // ... (其余代码不变)</code>lorsque échoue. Cela rend le programme plus robuste et peut mieux traiter les données d'erreur que les utilisateurs peuvent entrer.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!