Raven280438 - So 26.09.10 20:14
Titel: [C#] Prüfen, ob Eingabe Integer ist.
Hi,
ich habe einen String aus einer Textbox.
Jetzt möchte ich prüfen, ob der String ein Integer zwischen 10 und 1000 ist.
Wie bekomm ich das hin?
Mit
C#-Quelltext
1:
| Convert.ToInt16(string) < 10 |
bekomm ich einen Laufzeitfehler.
Gruß
Moderiert von
Kha: Topic aus C# - Die Sprache verschoben am So 26.09.2010 um 22:07
Trashkid2000 - So 26.09.10 20:47
Hallo,
Raven280438 hat folgendes geschrieben : |
C#-Quelltext 1:
| Convert.ToInt16(string) < 10 |
bekomm ich einen Laufzeitfehler. |
also, die Methode Convert.ToInt16() erwartet als Parameter einen sting, der in einen int-Wert umgewandelt werden soll.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| int result = Convert.ToInt16(textBox1.Text); if (result >= 10 && result <= 1000) { } else { } |
Geht das schief, so gibt es eine FormatException. Diese Exception müsstest Du abfangen.
Deshalb ist es sinnvoller, die Methode int.TryParse() zu benutzen, die versucht, einen Wert zu konvertieren, und einen bool zurückgibt, ob die Umwandlung geklappt hat. Dort wäre keine Exception-Behandlung nötig.
LG, Marko