在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