如何在Visual Basic中从字符串转换为整数?

swy*_*ell 47 vb.net

如何从字符串转换为整数?这是我试过的:

Price = CInt(Int(txtPrice.Text))
Run Code Online (Sandbox Code Playgroud)

我拿出了Int,我仍然有例外.

Cha*_*ins 92

使用

Convert.toInt32(txtPrice.Text)
Run Code Online (Sandbox Code Playgroud)

这是假设VB.NET.

从名称"txtPrice"来判断,你真的不想要一个Integer而是一个Decimal.所以改为使用:

Convert.toDecimal(txtPrice.Text)
Run Code Online (Sandbox Code Playgroud)

如果是这种情况,请确保您指定的是十进制而不是整数.

  • 在 Vb.net 中..此代码将出现异常“输入字符串的格式不正确。”。 (2认同)
  • 我可以获得格式错误的唯一方法是实际出现错误(输入字符/符号).修复此问题需要简单的输入验证,这不是一项要求. (2认同)
  • 这个解决方案对我来说抛出了一个错误,并且由于这个注册表项问题 http://support.microsoft.com/kb/942460 `CInt(<string>)` 运行良好,因此对于生产来说似乎不是很健壮。 (2认同)

zar*_*ari 21

你可以尝试一下:

Dim Price As Integer 
Int32.TryParse(txtPrice.Text, Price) 
Run Code Online (Sandbox Code Playgroud)

  • 我认为这是最好的答案.使用Int32或Decimal的TryParse()方法将能够处理输入到TextBox中的其他内容,例如货币符号和那种性质的东西.它也不会抛出异常,而是返回一个布尔值,指示它是通过还是失败. (2认同)

小智 10

您可以使用以下命令将字符串转换为int:

  • 用于整数的CInt(字符串)
  • 小数的CDec(String)

有关详细信息,请参阅类型转换函数(Visual Basic).


小智 5

请试试这个,VB.NET 2010:

  1. Integer.TryParse(txtPrice.Text, decPrice)
  2. decPrice = Convert.ToInt32(txtPrice.Text)

来自 Mola Tshepo Kingsley (WWW.TUT.AC.ZA)