在VB中,也许你或多或少会希望得到的数据转换成数字类型,数字类型既可以是整形,单精度,双精度,浮点数,只要是数字类型这个都可以使用,不过此函数只返回字符串中包含的数字,若第一个字符为字母或者非数字字符,那此函数范围0。
VB6.0的帮助解释如下:
返回包含于字符串内的数字,字符串中是一个适当类型的数值。
语法
Val(string)
说明
Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号 &O
(八进制)和 &H
(十六进制)。空白、制表符和换行符都从参数中被去掉。
下面的返回值为 1615198:
Val(" 1615 198th Street N.E.")
在下面的代码中,Val 为所示的十六进制数值返回十进制数值 -1。
Val("&HFFFF")
注意 Val 函数只会将句点(.)当成一个可用的小数点分隔符。当使用不同的小数点分隔符时,如在国际版应用程序中,代之以 CDbl 来把字符串转换为数字。
Val 函数示例
本示例使用 Val 函数返回字符串中所含的数值。
Dim MyValueMyValue = Val("2457")
'
返回2457
。MyValue = Val(" 2 45 7")
'
返回2457
。MyValue = Val("24 and 57")
'
返回24
。
若 你希望在C#中使用VB中的函数,那么请你添加对Microsoft.VisualBasic.dll的引用,然后导入命名空间
using Microsoft.VisualBasic;然后使用Conversion类里的静态Val函数.你也可以使用完全限定名引入,比如
Microsoft.VisualBasic.Conversion.Val("123abc");返回的结果是123
题记:若你想使用别的语言里的函数,而自己又不希望在本语言中自己构造,那么就导入别语言的DLL,再引用里面的函数即可。
来源:http://www.cnblogs.com/wanzegui325/archive/2010/11/09/vb_val_function.html