
显式类型转换,又叫强制类型转换。与隐式转换正好相反,显式转换需要用户明确地指定转换的类型。
在vb.net机房收费系统中遇到数据转换问题,如下需要将查询到的datatable数据中的"cash"字段值转换成single类型,这里用到的CType函数解决了这个问题。
enlineLog.cash = CType(Val(dt.Rows(0)("cash").ToString()),Single)
CType函数
CType 函数作用于两个参数。第一个参数是将要转换的表达式,第二个参数是目标数据类型或对象类。需要注意,第一个参数必须是表达式,不能是类型。
vb.net中的数据类型转换不经提供了CType一种方式,再看MSDN中的所有类型转换,vB.NET通过这些关键字强制把括号中的表达式转换为目标类型。
| 类型转换关键字 | 将表达式转换为数据类型 | 允许的要进行转换的表达式数据类型 |
| CBool | Boolean 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、String、Object |
| CByte | Byte 数据类型 (Visual Basic) | 任何数值类型(包括 SByte 和枚举类型)、Boolean、String、Object |
| CChar | Char 数据类型 (Visual Basic) | String,Object |
| cdate | Date 数据类型 (Visual Basic) | String,Object |
| CDbl | Double 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CDec | Decimal 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CInt | Integer 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CLng | Long 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CObj | Object 数据类型 | 任何类型 |
| CSByte | SByte 数据类型 (Visual Basic) | 任何数值类型(包括 Byte 和枚举类型)、Boolean、String、Object |
| CShort | Short 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CSng | Single 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CStr | String 数据类型 (Visual Basic) | 任何数值类型(包括 Byte,SByte 和枚举类型)、Boolean、Char、Char 数组、Date、Object |
| CType | 逗号 (,) 后面指定的类型 | 当转换为“基本数据类型”(包括基本类型数组)时,相应转换关键字所允许的相同类型 当转换为“复合数据类型”时,其实现的接口和继承的类 当转换为一个已经在其上重载 CType 的类或结构时,该类或结构 |
| CUInt | UInteger 数据类型 | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| Culng | ulong 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
| CUShort | UShort 数据类型 (Visual Basic) | 任何数值类型(包括 Byte、SByte 和枚举类型)、Boolean、String、Object |
微信扫一扫
支付宝扫一扫
评论列表(0条)