asp数据强制转换的方法

2015-08-12 16:04:06来源:作者:人点击

  asp数据强制转换 

  CBool(expression)

  CByte(expression)

  CCur(expression)

  CDate(expression)

  CDbl(expression) (保留小数)

  CDec(expression)

  CInt(expression) (不保留小数)

  CLng(expression) (不保留小数)

  CSng(expression)

  CStr(expression)

  CVar(expression)

  CStr(expression)

  Vbscript类型转换函数

  CBool函数

  必要的 expression 参数可以是任何字符串表达式或数值表达式。

  返回类型

  函数名称决定返回类型,如下所示:

  函数 返回类型 expression 参数范围

  CBool Boolean 任何有效的字符串或数值表达式。

  CByte Byte 0 至 255。

  CCur Currency -922,337,203,685,477.5808 至922,337,203,685,477.5807。

  CDate Date 任何有效的日期表达式。

  CDbl Double 负数从 -1.79769313486232E308 至 -4.94065645841247E-324;正

  数从 4.94065645841247E-324 至 1.79769313486232E308。

  CDec Decimal 零变比数值,即无小数位数值,为

  +/-79,228,162,514,264,337,593,543,950,335。对于 28 位小数的数值,范围则

  为

  +/-7.9228162514264337593543950335;最小的可能非零值是 0.00000000000000

  00000000000001。

  CInt Integer -32,768 至 32,767,小数部分四舍五入。

  CLng Long -2,147,483,648 至 2,147,483,647,小数部分四舍五入。

  CSng Single 负数为 -3.402823E38 至 -1.401298E-45;正数为 1.401298E-45

  至 3.402823E38。

  CStr String 依据 expression 参数返回 Cstr。

  CVar Variant 若为数值,则范围与 Double 相同;若不为数值,则范围与 Stri

  ng 相同。

  说明

  如果传递给函数的 expression 超过转换目标数据类型的范围,将发生错误。 通常,在编码时可以使用数据类型转换函数,来体现某些操作的结果应该表示为特定的数据类型,而不是缺省的数据类型。例如,当单精度、双精度或整数运算发生 的情况下,使用 CCur 来强制执行货币运算。

  应该使用数据类型转换函数来代替 Val,以使国际版的数据转换可以从一种数据类型转换为另一种。例如,当使用 Ccur 时,不同的小数点分隔符、千分位分隔符和各种货币选项,依据系统的国别设置都会被妥善识别。

  当小数部分恰好为 0.5 时,Cint 和 CLng 函数会将它转换为最接近的偶数值。例如,0.5 转换为 0、1.5 转换为 2。Cint 和 CLng 函数不同于 Fix 和 Int 函数,Fix 和 Int 函数会将小数部分截断而不是四舍五入。并且 Fix 和 Int 函数总是返回与传入的数据类型相同的值。

  使用 IsDate 函数,可判断 date 是否可以被转换为日期或时间。Cdate 可用来识别日期文字和时间文字,以及落入可接受的日期范围内的数值。当转换一个数字成为日期时,是将整数部分转换为日期,小数部分转换为从午夜起算的时间。

  CDate 依据系统上的国别设置来决定日期的格式。如果提供的格式为不可识别的日期设置,则不能正确判断年、月、日的顺序。另外,长日期格式,若包含有星期的字符串,也不能被识别。

  CVDate 函数也提供对早期 Visual Basic 版本的兼容性。CVDate 函数的语法与CDate 函数是完全相同的,不过,CVDate 是返回一个 Variant,它的子类型是Date,而不是实际的 Date 类型。因为现在已有真正的 Date 类型,所以 CVDate 也不再需要了。转换一个表达式成为 Date,再赋值给一个 Variant,也可以达到同样的效果。也可以使用这种技巧将其他真正的数据类型转换为对等的 Variant 子类型。

  注意 CDec

  函数不能返回独立的数据类型,而总是返回一个 Variant,它的值已经被转换为 Decimal 子类型。

  描述

  返回表达式,此表达式已转换为 Boolean(布尔类型/是否类型) 子类型的 Variant(变量)。

  语法

  CBool(expression)

  expression 是任意有效的表达式。

  说明

  如果 expression 是零,则返回 False;否则返回 True。如果 expression 不能解释为数值,则将发生运行时错误。 下面的示例利用 CBool 函数把 expression(表达式) 转换为 Boolean。如果 expression 不为零, CBool 返回 True;否则,返回 False。

  Dim A, B, Check

  A = 5: B = 5' 初始化变量

  Check = CBool(A = B)' check的值为 True

  A = 0 '定义变量

  Check = CBool(A) '复选框设为 False

  Cbyte函数

  描述

  返回表达式,此表达式已被转换为 Byte(字节类型) 子类型的 Variant。

  语法

  CByte(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币、单精度、双精度或整数运算的情况下,使用 CByte 强制执行字节运算。

  CByte 函数用于进行从其他数据类型到 Byte 子类型的的国际公认的格式转换。例如对十进制分隔符(如千分符)的识别,可能取决于系统的区域设置。

  如果 expression 在 Byte 子类型可接受的范围之外,则发生错误。下面的示例利用 CByte 函数把 expression 转换为 byte:

  Dim MyDouble, MyByte

  MyDouble = 125.5678 ' MyDouble 是一个双精度值

  MyByte = CByte(MyDouble)' MyByte 包含 126

  Ccur函数

  描述

  返回表达式,此表达式已被转换为 Currency 子类型的 Variant。

  语法

  CCur(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如在整数运算的情况下,使用 CCur 函数强制进行货币计算。

  CCur 函数用于进行从其他数据类型到 Currency 子类型的国际公认的格式转换。例如,对十进制分隔符和千位分隔符的识别取决于系统的区域设置。

  下面的示例利用 CCur 函数把 expression 转换为 Currency:

  Dim MyDouble, MyCurr

  MyDouble = 543.214588' MyDouble 是双精度的

  MyCurr = CCur(MyDouble * 2)'把 MyDouble * 2 (1086.429176) 的结果转换为

   ' Currency (1086.4292)

  Cdate函数

  描述

  返回表达式,此表达式已被转换为 Date 子类型的 Variant。

  语法

  CDate(date)

  date 参数是任意有效的日期表达式。

  说明

  IsDate 函数用于判断 date 是否可以被转换为日期或时间。CDate 识别日期文字和时间文字,以及一些在可接受的日期范围内的数字。在将数字转换为日期时,数字的整数部分被转换为日期,分数部分被转换为从午夜开始计算的时间。

  CDate 根据系统的区域设置识别日期格式。如果数据的格式不能被日期设置识别,则不能判断年、月、日的正确顺序。另外,如果长日期格式包含表示星期几的字符串,则不能被识别。

  下面例子利用 CDate 函数把字符串转换为日期。通常,建议不要使用硬编码日期和时间(如下例所示)。而要使用日期和时间的文字形式(例如 #10/19/1962#, #4:45:23 PM#)。

  MyDate = "October 19, 1962"' 定义日期

  MyShortDate = CDate(MyDate)' 转换为日期数据类型

  MyTime = "4:35:47 PM"' 定义时间

  MyShortTime = CDate(MyTime)' 转换为日期数据类型

  Cdbl函数

  描述

  返回表达式,此表达式已被转换为 Double 子类型的 Variant。

  语法

  CDbl(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如在出现货币或整数运算的情况下,使用 CDbl 或 CSng 函数强制进行双精度或单精度算术运算。

  CDbl 函数用于进行从其他数据类型到 Double 子类型的国际公认的格式转换。例如,十进制分隔符和千位分隔符的识别取决于系统的区域设置。下面的示例利用 CDbl 函数把 expression 转换为 Double。

  Dim MyCurr, MyDouble

  MyCurr = CCur(234.456784)' MyCurr 是 Currency 型。

  MyDouble = CDbl(MyCurr * 8.2 * 0.01)' 把结果转换为 Double 型。

  CInt函数

  描述

  返回表达式,此表达式已被转换为 Integer 子类型的 Variant。

  语法

  CInt(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币、单精度或双精度运算的情况下,使用 CInt 或 CLng 强制执行整数运算。

  CInt 函数用于进行从其他数据类型到 Integer 子类型的国际公认的格式转换。例如对十进制分隔符(如千分符)的识别,可能取决于系统的区域设置。

  如果 expression 在 Integer 子类型可接受的范围之外,则发生错误。

  下面的示例利用 CInt 函数把值转换为 Integer:

  Dim MyDouble, MyInt

  MyDouble = 2345.5678 ' MyDouble 是 Double。

  MyInt = CInt(MyDouble)' MyInt 包含 2346。

  --------------------------------------------------------------------------------

  注意 CInt 与 Fix 和 Int 函数不同,后两者将数字的分数部分截尾取整,而不是四舍五入。当分数部分恰好为 0.5 时,CInt 函数通常将其四舍五入为最接近的偶数。例如,0.5 被四舍五入为 0,而 1.5 被四舍五入为 2。

  --------------------------------------------------------------------------------

  CLng函数

  描述

  返回表达式,此表达式已被转换为 Long 子类型的 Variant。

  语法

  CLng(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如,在出现货币运算、单精度或双精度算术运算的情况下,使用 CInt 或 CLng 函数强制进行整数运算。

  CLng 函数用于进行从其他数据类型到 Long 子类型的的国际公认的格式转换。例如,对十进制分隔符和千位分隔符的识别取决于系统的区域设置。

  如果 expression 取值不在 Long 子类型的允许范围内,则会出现错误。

  下面的示例利用 CLng 函数把值转换为 Long:

  Dim MyVal1, MyVal2, MyLong1, MyLong2

  MyVal1 = 25427.45: MyVal2 = 25427.55' MyVal1, MyVal2 是双精度值。

  MyLong1 = CLng(MyVal1)' MyLong1 包含 25427。

  MyLong2 = CLng(MyVal2)' MyLong2 包含 25428。

  --------------------------------------------------------------------------------

  注意 CLng 函数与 Fix 和 Int 函数功能不同,后两者函数对数值的小数部分进行截尾取整而不是四舍五入。当小数部分恰好等于 0.5 时, CLng 函数通常向与此数最接近的偶数取整。例如,0.5 取整为 0、1.5 取整为 2。

  --------------------------------------------------------------------------------

  CSng函数

  描述

  返回表达式,该表达式已被转换为 Single 子类型的 Variant。

  语法

  CSng(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币或整数运算的情况下,使用 CDbl 或 CSng 强制执行双精度或单精度运算。

  CSng 函数用于进行从其他数据类型到 Single 子类型的国际公认的格式转换。例如,对十进制分隔符(如千分符)的识别取决于系统的区域设置。

  如果 expression 在 Single 子类型允许的范围之外,则发生错误。

  下面的示例利用 CSng 函数把值转换为 Single:

  Dim MyDouble1, MyDouble2, MySingle1, MySingle2' MyDouble1, MyDouble2 是双精度值。

  MyDouble1 = 75.3421115: MyDouble2 = 75.3421555

  MySingle1 = CSng(MyDouble1)' MySingle1 包含 75.34211。

  MySingle2 = CSng(MyDouble2)' MySingle2 包含 75.34216。

  Cstr函数

  描述

  返回表达式,该表达式已被转换为 String 子类型的 Variant。

  语法

  CStr(expression)

  expression 参数是任意有效的表达式。

  说明

  通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,使用 CStr 强制将结果表示为 String。

  CStr 函数用于替代 Str 函数来进行从其他数据类型到 String 子类型的国际公认的格式转换。例如对十进制分隔符的识别取决于系统的区域置。

  expression 根据下表决定返回的数据:

  如果 expression 为 CStr 返回

  Boolean 字符串,包含 True 或 False。

  Date 字符串,包含系统的短日期格式日期。

  Null 运行时错误。

  Empty 零长度字符串 ("")。

  Error 字符串,包含跟随有错误号码的单词 Error。

  其他数值 字符串,包含此数字。

  下面的示例利用 CStr 函数把数字转换为 String:

  Dim MyDouble, MyString

  MyDouble = 437.324 ' MyDouble 是双精度值。

  MyString = CStr(MyDouble)' MyString 包含 "437.324"。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台