繁体   English   中英

检查在C#中使用“ int.Parse”方法将字符串转换为整数的空文本框

[英]Checking empty text boxes which convert strings to integers using “int.Parse” method in C#

如何检查在C#中使用“ int.Parse”将字符串转换为整数的空复选框?

如果我尝试传递空白文本框,Visual Studio会给我这个错误-“输入字符串的格式不正确。”

在此处输入图片说明

我已经阅读了一些关于stackoverflow的问题,这些问题都解决了同一问题,但是我知道各种各样的人会使用各种方法来完成相同的任务。 所以我也想认识他们。 请以您最先了解的最简单方式开始。

int multiplyBy;
if(int.TryParse(textBox3.Text, out multiplyBy)) {
   //success
} else {
   //string was not in correct format
}

int.TryParse(string s, out int result)方法尝试解析该字符串,但如果格式错误,则不引发任何异常,它返回一个bool,指示格式是否有效。 out int result参数是应该获取值的int。

使用Int32.TryParse验证文本框中的值是有效整数

http://msdn.microsoft.com/en-us/library/f02979c7.aspx

您可以使用以下方法检查文本框是否具有值:

string.IsNullOrEmpty(textbox.Text)

而不是直接将字符串表示形式解析为整数,而是检查它是否能够转换为整数。 .NET具有整数的TryParse方法,该方法尝试将字符串表示形式转换为int,并返回bool值指示转换是否成功。 如果成功,则将解析后的值存储在类型为TryParse的函数的第二个参数中。

注意:如果转换失败,TryParse方法不会引发异常。 它仅返回false表示转换失败。

参考: http : //msdn.microsoft.com/zh-cn/library/f02979c7.aspx

如果您希望在一行代码中使用它


int i = If(String.IsNullOrEmpty(TextBox1.Text), 0, Int32.Parse(TextBox1.Text))




int i = (String.IsNullOrEmpty(TextBox1.Text)) ?? 0: Int32.Parse(TextBox1.Text)

你为什么不赶上例外

try
{
      int multiplyBy = int.Parse(textBox3.Text);
} catch(Exception){}

您也可以根据需要捕获(FormateException)。

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM