如何检查输入内容是否是整数?

xueduan 2004-10-23 06:42:49
如何检查输入内容是否是整数?
...全文
253 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
淡蓝色2 2005-04-25
  • 打赏
  • 举报
回复
给你写个小函数,效率比较高

Public Function IsInteger(ByVal Value As String) As Boolean

If Value Is Nothing OrElse _
Value.Length < 1 OrElse _
Value.Length > 11 OrElse _
Value.IndexOf("-") > 0 _
Then Return False

Dim iASC As Integer
For Each c As Char In Value
iASC = Asc(c)
If (iASC < 48 OrElse iASC > 57) AndAlso iASC <> 45 Then Return False
Next
Return True
End Function

'调用示范:
IsInteger("01234") '返回True
IsInteger("-1234") '返回True
IsInteger("3.14") '返回False
IsInteger("12-4") '返回False
IsInteger(Nothing) '返回False
IsInteger(String.Empty)'返回False
IsInteger("") '返回False
sswv 2005-04-25
  • 打赏
  • 举报
回复
使用正则表达式:
if(! System.Text.RegularExpressions.Regex.IsMatch(txtPort.Text, @"^(\d)$"))
{
return false;
}
hamadou 2005-04-25
  • 打赏
  • 举报
回复
最好不要使用异常的方法!因为由于触发和捕获异常都要时间!
建议使用正则表达式或创建用户控件(只允许输入整数,不允许输入小数点,或者设置一个属性来控制是否可以输入小数,然后判断该属性即可)
荆楚布衣 2005-04-23
  • 打赏
  • 举报
回复
该方法直接有判断小数点的功能啊
kardon 2004-10-23
  • 打赏
  • 举报
回复
异常捕获,判断是否数字兴字符串
try
{
Int32.parse("TextBox.text");
}
catch
{}
然后判断是否有小数点。
If (TextBox.text.ToString().IndexOf(".")== -1 )

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧