首页 新闻 会员 周边

怎么判断字符串能不能转化成整型

0
[待解决问题]

在程序中如何判断int.prase("中")不能转化成整型,怎么写

870087629的主页 870087629 | 初学一级 | 园豆:170
提问于:2010-09-17 11:34
< >
分享
所有回答(5)
0

我有个同事,写的是判断转化DateTime类型的方法,是这么写的:

try{

DateTime.Parse(str);

return true;

}

catch

{

return false;

}

int应该一样可以吧?

ps:不大厚道哦,0分帖子。。。

顾晓北 | 园豆:10844 (专家六级) | 2010-09-17 11:45
0

TryParse

Launcher | 园豆:45045 (高人七级) | 2010-09-17 11:49
0

int.TryPase(),如果不能转化成整型的话,此方法返回false,否则返回true

int.TryPrase(string source, out i)有2个参数,第一个是要转化的字符串,第二个参数存放转化后的值,如果转化失败,就为0,及i = 0

举个例子:

int a = "abc";  //要转化的变量

int result = 0;

if (int.TryParse(a, out result))//返回false,result = 0(因为转化失败了)

yixin841210 | 园豆:1138 (小虾三级) | 2010-09-17 12:35
Thanks.
支持(0) 反对(0) aguiagui | 园豆:305 (菜鸟二级) | 2010-09-17 14:42
0

另一种方法。

        #region 判断是否为整数 是返回true 否返回false 可以传入null
        /// <summary>
        /// 判断是否为整数 是返回true 否返回false 可以传入null
        /// </summary>
        /// <param name="strVal">要判断的字符</param>
        /// <returns></returns>
        public static bool IsInt(string strVal)
        {
            if (strVal == null || strVal.Length == 0)
                return false;
            //判断是否只有.、-、 -.
            if (strVal == "." || strVal == "-" || strVal == "-.")
                return false;

            //去掉第一个负号,中间是不可以有负号的
            if (strVal.Substring(0, 1) == "-")
                strVal = strVal.Remove(0, 1);

            foreach (char c in strVal)
            {
                if (c < '0' || c > '9')
                    return false;
            }
            return true;
        }
        #endregion

Astar | 园豆:40805 (高人七级) | 2010-09-17 15:08
0

Regex r = new Regex("^[0-9]*$");
                if (r.IsMatch(Request.QueryString["page"]))
                {
                    PageIndex = Convert.ToInt32(Request.QueryString["page"]);
                    ShowInfos();
                }
如果能转化为整形的就走if了。可以试试

rains | 园豆:860 (小虾三级) | 2010-09-18 12:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册