c#中怎么判断选择中输入的是不是整数
5个回答
展开全部
2种方式常见的方法
第一种 JS 用正则来判断比如
<script type="text/javascript">
function validate(){
var reg = new RegExp("^[0-9]*$"); //定义正则,表示只是数字
var obj = document.getElementById("name"); //获取当前输入的值
if(!reg.test(obj.value)){
alert("请输入数字!");
}
}
</script>
第二种是在后台来判断 比如
public static bool IsNumber(object sNum)
{
long num; //临时变量
if (sNum == null)
{
return false; //如果传入的值为NULL,返回False
}
if (long.TryParse(sNum.ToString(), out num)) //尝试转换传入的值
return true; //成功返回True
else
return false; //失败返回False
}
还有方法。 比如你可以为输入的文本框添加一个KeyPress事件,只允许用户输入数字和退格,那肯定是整数了
private void TextBox1_KeyPress(object sender, KeyPressEventArgs e)
{
//获取键盘输入的值来判断是否是数字
if (e.KeyChar != '\b' && !Char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
else
{
MessageBox.Show("请输入整数","类型错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
展开全部
算法原理如下:
输入的一般都是字符串,因此,问题转换为:判断一个字符串里面的字符构成的结果是否为整数。
整数和其他数字的差别是:整数里面只含有数字字符,同时,第一个字符可以为“-”,来表示一个负数。
于是可以写算法:
判断一个字符串->
第一位如果不是“-”或者数字字符,就不是整数 return false
剩下的字符,如果不是数字字符,那么这个字符串表示的 就是不是整数 return false
在这两个判断之后,其他的结果就整数了 return true
用C#里面的方法的话,可以使用 以下方法:
Boolean Int.TryParse(string)
如果能够转成Int,则返回true,说明是整数,反之不然。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var str=textbox1.Text.Trim();
int number;
if(int.TryParse(str , out number))
{
MessageBox.Show("输入为整数!");
}
else
{
MessageBox.Show("输入有误!");
}
int number;
if(int.TryParse(str , out number))
{
MessageBox.Show("输入为整数!");
}
else
{
MessageBox.Show("输入有误!");
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private void textBox1_Leave(object sender, EventArgs e)
{
if (!Regex.IsMatch(textBox1.Text.ToString(), @"^-?[1-9]\d*$|^0$"))
{
MessageBox.Show("请输入数字");
textBox1.SelectAll();
return;
}
}
{
if (!Regex.IsMatch(textBox1.Text.ToString(), @"^-?[1-9]\d*$|^0$"))
{
MessageBox.Show("请输入数字");
textBox1.SelectAll();
return;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询