首页 > 代码库 > 强制转化常用函数

强制转化常用函数

  1     {  2         #region 强制转化  3         /// <summary>  4         /// object转化为Bool类型  5         /// </summary>  6         /// <param name="obj"></param>  7         /// <returns></returns>  8         public static bool ObjToBool(this object obj)  9         { 10             bool flag; 11             if (obj == null) 12             { 13                 return false; 14             } 15             if (obj.Equals(DBNull.Value)) 16             { 17                 return false; 18             } 19             return (bool.TryParse(obj.ToString(), out flag) && flag); 20         } 21         /// <summary> 22         /// object强制转化为DateTime类型(吃掉异常) 23         /// </summary> 24         /// <param name="obj"></param> 25         /// <returns></returns> 26         public static DateTime? ObjToDateNull(this object obj) 27         { 28             if (obj == null) 29             { 30                 return null; 31             } 32             try 33             { 34                 return new DateTime?(Convert.ToDateTime(obj)); 35             } 36             catch (ArgumentNullException ex) 37             { 38                 return null; 39             } 40         } 41         /// <summary> 42         /// int强制转化 43         /// </summary> 44         /// <param name="obj"></param> 45         /// <returns></returns> 46         public static int ObjToInt(this object obj) 47         { 48             if (obj != null) 49             { 50                 int num; 51                 if (obj.Equals(DBNull.Value)) 52                 { 53                     return 0; 54                 } 55                 if (int.TryParse(obj.ToString(), out num)) 56                 { 57                     return num; 58                 } 59             } 60             return 0; 61         } 62         /// <summary> 63         /// 强制转化为long 64         /// </summary> 65         /// <param name="obj"></param> 66         /// <returns></returns> 67         public static long ObjToLong(this object obj) 68         { 69             if (obj != null) 70             { 71                 long num; 72                 if (obj.Equals(DBNull.Value)) 73                 { 74                     return 0; 75                 } 76                 if (long.TryParse(obj.ToString(), out num)) 77                 { 78                     return num; 79                 } 80             } 81             return 0; 82         } 83         /// <summary> 84         /// 强制转化可空int类型 85         /// </summary> 86         /// <param name="obj"></param> 87         /// <returns></returns> 88         public static int? ObjToIntNull(this object obj) 89         { 90             if (obj == null) 91             { 92                 return null; 93             } 94             if (obj.Equals(DBNull.Value)) 95             { 96                 return null; 97             } 98             return new int?(ObjToInt(obj)); 99         }100         /// <summary>101         /// 强制转化为string102         /// </summary>103         /// <param name="obj"></param>104         /// <returns></returns>105         public static string ObjToStr(this object obj)106         {107             if (obj == null)108             {109                 return "";110             }111             if (obj.Equals(DBNull.Value))112             {113                 return "";114             }115             return Convert.ToString(obj);116         }117         /// <summary>118         /// Decimal转化119         /// </summary>120         /// <param name="obj"></param>121         /// <returns></returns>122         public static decimal ObjToDecimal(this object obj)123         {124             if (obj == null)125             {126                 return 0M;127             }128             if (obj.Equals(DBNull.Value))129             {130                 return 0M;131             }132             try133             {134                 return Convert.ToDecimal(obj);135             }136             catch137             {138                 return 0M;139             }140         }141         /// <summary>142         /// Decimal可空类型转化143         /// </summary>144         /// <param name="obj"></param>145         /// <returns></returns>146         public static decimal? ObjToDecimalNull(this object obj)147         {148             if (obj == null)149             {150                 return null;151             }152             if (obj.Equals(DBNull.Value))153             {154                 return null;155             }156             return new decimal?(ObjToDecimal(obj));157         } 158         #endregion159 160     }

 

强制转化常用函数