我该如何解析一个空字符串?int.Parse(Textbox1.text)给我一个错误:
输入字符串的格式不正确.
System.FormatException:输入字符串的格式不正确.
如果文本为空(Textbox1.text = ''),则会抛出此错误.我理解这个错误,但不知道如何纠正这个.
use*_*erx 31
如果您希望在空文本框上默认为0(并在格式不正确的输入上抛出异常):
int i = string.IsNullOrEmpty(Textbox1.Text) ? 0 : int.Parse(Textbox1.Text);
Run Code Online (Sandbox Code Playgroud)
如果您希望使用任何格式不正确的输入默认为0:
int i;
if (!int.TryParse(Textbox1.Text, out i)) i = 0;
Run Code Online (Sandbox Code Playgroud)
Ry-*_*Ry- 14
那么,你想要的结果是什么?如果您只想验证输入,请int.TryParse改用:
int result;
if (int.TryParse(Textbox1.Text, out result)) {
// Valid input, do something with it.
} else {
// Not a number, do something else with it.
}
Run Code Online (Sandbox Code Playgroud)
if(!String.IsNullOrEmpty(Textbox1.text))
var number = int.Parse(Textbox1.text);
Run Code Online (Sandbox Code Playgroud)
甚至更好:
int number;
int.TryParse(Textbox1.Text, out number);
Run Code Online (Sandbox Code Playgroud)
试试这个:
int number;
if (int.TryParse(TextBox1.Text, out number))
{
//Some action if input string is correct
}
Run Code Online (Sandbox Code Playgroud)
如果输入是数字或空字符串,则这将起作用。如果字符串为空,它将返回零,否则将返回实际数字。
int.Parse("0"+Textbox1.Text)
Run Code Online (Sandbox Code Playgroud)