[英]int.Parse(textBox1.Text) error
我收到错误int pocet = int.Parse(textBox1.Text);
它说数据格式有些错误,但是我只在TextBox1中写自然数
我可能会使用TryParse方法,该方法不会在有不良数据时不会引发异常,但是将允许您使用控制流和逻辑来处理它:
int number;
bool result = Int32.TryParse(TextBox.Text.Trim(), out number);
if (result)
{
//Carry On/
}
else
{
//Handle input error
}
我怀疑您那里有一个空字符串,开头或结尾都有空格,或者您正在用数千个分隔符书写。
您可以指示Int32.Parse方法处理以下某些情况:
Int32.Parse(
" -12,340 ",
NumberStyles.AllowLeadingWhite |
NumberStyles.AllowThousands |
NumberStyles.AllowTrailingWhite |
NumberStyles.AllowLeadingSign,
CultureInfo.CurrentCulture));
请注意,最后的当前区域性很重要,因为千位分隔符会有所不同,具体取决于用户将其计算机设置为何种区域性。
但是,这仍然无法处理空字符串-只需在执行解析之前检查字符串是否为空即可。
如果您使用自然数,则使用
NumericUpDown控件
int pocet = int.Parse(numericUpDown1.Value.ToString());
我也有同样的问题。...请确保您使用正确的Cap编号
9和
9
第一个有效,第二个无效!
希望这可以帮助
@txshon
尝试:
int intValueFromTbx = Convert.ToInt32(textBox1.Text)
尝试使用
Convert.ToInt32(textBox1.Text);
还要进行调试,以确保转换时textBox1.Text
中只有整数。
使用此方法:
int pocet = Int32.Parse(TextBox1.Text.ToString());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.