• Convert.ToInt32问题Convert.ToInt32(context.Request.Form["Txt_IntegralMin"])


    context.Request.Form["Txt_IntegralMin"]不仅仅是字符串对象,还可能是null。

    例如"trest"不能转换为int,当然出错!

    建议使用IntTryParse

    自己封装了一个IntTryParse方法:

    publicstaticint IntTryParse(object srcObj)
    {
    int defaultValue;
    if (srcObj ==null) { return0; }
    Int32.TryParse(srcObj.ToString(),
    out defaultValue);
    return defaultValue;
    }
    publicstaticint IntTryParse(object srcObj, int NullValue)
    {
    int defaultValue;
    ////if (srcObj == null) { return 0; }
    if (!Int32.TryParse(srcObj.ToString(), out defaultValue)) { Int32.TryParse(NullValue.ToString(), out defaultValue); }
    return defaultValue;
    }
    int temp=IntTryParse(context.Request.Form["Txt_IntegralMin"],-1);
    //context.Request.Form["Txt_IntegralMin"]为null或不能转换为数字时,设置temp为-1,该语句不会报错
    总结:前面加了out说明它是作为返回的,也就是说把a试着转化为int值,如果成功就放在b里面返回。
    int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。
    如果字符串为空,则抛出ArgumentNullException异常;
    如果字符串内容不是数字,则抛出FormatException异常;
    如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;
    
    int.TryParse 与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。最后一个参数为输出值,如果转换失败,输出值为 0
  • 相关阅读:
    Django(app的概念、ORM介绍及编码错误问题)
    Django(完整的登录示例、render字符串替换和redirect跳转)
    Construct Binary Tree from Preorder and Inorder Traversal
    Single Number II
    Single Number
    Binary Tree Level Order Traversal II
    Binary Tree Level Order Traversal
    Binary Tree Zigzag Level Order Traversal
    Recover Binary Search Tree
    Add Binary
  • 原文地址:https://www.cnblogs.com/ljan/p/2384002.html
Copyright © 2020-2023  润新知