注册 登录
编程论坛 ASP.NET技术论坛

关于判断值是否数字的问题!

golmjie 发布于 2010-08-04 13:53, 1147 次点击
我想问下怎样判断接收文本框或者弄分页时候接收Pega值时是不是数字,我上搜索引擎都是说用正则表达式的!有没有什么bool函数可以判断的哈?比如is什么什么的!或者有什么办法哈?请教!
13 回复
#2
YSKING2010-08-04 14:58
没有,总还是得自己写
#3
foktime2010-08-04 16:35
值.GetType()
#4
golmjie2010-08-04 17:03
回复 3楼 foktime
我试了下他可以判断出哪种类型可是用他来直接和System.lnt32比较不了!
#5
golmjie2010-08-04 17:04
回复 2楼 YSKING
……不明白强类型的还要自己写,asp.js都不用自己写了!
#6
Mark_hong2010-08-04 17:30
可以的,利用Char.IsNumber函数,如:
/// <summary>
        /// 检查是否为数字
        /// </summary>
        /// <param name="c">要检查的内容</param>
        /// <returns>是:true,否:false</returns>
        public static bool IsNumeric(char[] chars)
        {
            foreach(char c in chars)
            {
                if (!Char.IsNumber(c))
                {
                    return false;
                }
            }
            return true;
        }
#7
冰镇柠檬汁儿2010-08-04 17:44
以下是引用golmjie在2010-8-4 17:04:45的发言:

……不明白强类型的还要自己写,asp.js都不用自己写了!
不是不用写,而是别人给你写好了
判断是否是数字的方法有很多,像楼上的方法是一种,用正则也是一种,用try的方法又是一种,还有其他很多方式,只是.NET没提供这类的方法而已
#8
golmjie2010-08-04 19:29
回复 6楼 Mark_hong
还是不明白我还是新手,你这里是定义了一个方法可是传进的是是个char[]数组啊?我要检查的是个值啊!比如"10"这个字符串就可以转,"10a"这个就不能转!
#9
golmjie2010-08-04 19:35
回复 7楼 冰镇柠檬汁儿
人家都写好了多方便,异常用来判断是不是能转换数字,感觉有点怪!
#10
saitor2010-08-04 19:42
汗,C#怎么会没有,INT.TRYPARSE这个不就是
#11
golmjie2010-08-04 19:51
回复 6楼 Mark_hong
我从你哪里得到一种方法!int i=txt.Text.Length;//获得接收字符的长度!再if(char.lsNumber(txt.Text.i-1))//真为数字,假为不是数字!手机打字真痛苦……
#12
golmjie2010-08-04 19:53
回复 10楼 saitor
是也,可是中间很多参数啊?举个例子怎么用哈?
#13
saitor2010-08-04 19:55
int i ;
            Console.WriteLine(int.TryParse("aa", out i));
#14
golmjie2010-08-04 20:29
回复 13楼 saitor
谢谢了,查了下MSDM简单的东西给他说成那么复杂了,又那么多英语!如果成功i就aa的值,不成功就为0!
1