Conversion.Val 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
以適當類型的數值傳回包含在字串中的數字。
多載
Val(Object) |
以適當類型的數值傳回包含在字串中的數字。 |
Val(Char) |
以適當類型的數值傳回包含在字串中的數字。 |
Val(String) |
以適當類型的數值傳回包含在字串中的數字。 |
Val(Object)
以適當類型的數值傳回包含在字串中的數字。
public:
static double Val(System::Object ^ Expression);
public static double Val (object? Expression);
public static double Val (object Expression);
static member Val : obj -> double
Public Function Val (Expression As Object) As Double
參數
- Expression
- Object
必要。 任何有效的 String
運算式、Object
變數或 Char
值。 如果 Expression
的型別為 Object
,其值必須可轉換成 String
,否則會發生 ArgumentException 錯誤。
傳回
以適當類型數值包含在字串中的數字。
例外狀況
InputStr
太大。
Expression
是 Object
類型運算式,無法轉換成 String
。
範例
下列範例會 Val
使用 函式傳回每個字串中包含的數位。 Val
會在無法解譯為數值、數值修飾詞、數值標點符號或空格符的第一個字元停止轉換。
Dim valResult As Double
' The following line of code sets valResult to 2457.
valResult = Val("2457")
' The following line of code sets valResult to 2457.
valResult = Val(" 2 45 7")
' The following line of code sets valResult to 24.
valResult = Val("24 and 57")
備註
函 Val
式會在無法辨識為數位一部分的第一個字元停止讀取字串。 無法辨識通常被視為數值部分的符號和字元,例如貨幣符號和逗號。 不過,函式會辨識八進位) 的基底前置 &O
詞 (,並 &H
辨識十六進位) 的 (。 會從 自變數中移除空白、索引標籤和換行字元。
下列呼叫會傳回值1234123。
Val(" 1234 123th Street N.E.")
下列呼叫會傳回十進位值 -1。
Val("&HFFFF")
注意
函 Val
式只會將句號 () .
辨識為有效的小數分隔符。 使用其他小數分隔符時,如同在國際應用程式中,請使用 CDbl
或 CInt
改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider)
方法。 例如,將字串Double
轉換成 時,請使用 Double.Parse 。
注意
InvalidCastException可能會擲回例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。
' These examples cause run-time errors.
'Console.WriteLine(Val("1.34%"))
'Console.WriteLine(Val("1.34&"))
如果衝突未包含在字串中,編譯程式就會攔截格式化為 Double
和 Integer
Long
類型字元的數位之間的衝突。
' These examples cause compiler errors.
'Dim m = 1.34%
'Dim n = 1.34&
另請參閱
適用於
Val(Char)
以適當類型的數值傳回包含在字串中的數字。
public:
static int Val(char Expression);
public static int Val (char Expression);
static member Val : char -> int
Public Function Val (Expression As Char) As Integer
參數
- Expression
- Char
必要。 任何有效的 String
運算式、Object
變數或 Char
值。 如果 Expression
的型別為 Object
,其值必須可轉換成 String
,否則會發生 ArgumentException 錯誤。
傳回
以適當類型數值包含在字串中的數字。
例外狀況
InputStr
太大。
Expression
是 Object
類型運算式,無法轉換成 String
。
範例
下列範例會 Val
使用 函式傳回每個字串中包含的數位。 Val
會在無法解譯為數值、數值修飾詞、數值標點符號或空格符的第一個字元停止轉換。
Dim valResult As Double
' The following line of code sets valResult to 2457.
valResult = Val("2457")
' The following line of code sets valResult to 2457.
valResult = Val(" 2 45 7")
' The following line of code sets valResult to 24.
valResult = Val("24 and 57")
備註
函 Val
式會在無法辨識為數位一部分的第一個字元停止讀取字串。 無法辨識通常被視為數值部分的符號和字元,例如貨幣符號和逗號。 不過,函式會辨識八進位) 的基底前置 &O
詞 (,並 &H
辨識十六進位) 的 (。 空白、索引標籤和換行字元會從 自變數中移除。
下列呼叫會傳回值1615198。
Val(" 1615 198th Street N.E.")
下列呼叫會傳回十進位值 -1。
Val("&HFFFF")
注意
函 Val
式只會將句號 () .
辨識為有效的小數分隔符。 使用不同的小數分隔符時,如同在國際應用程式中,請使用 CDbl
或 CInt
改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider)
方法。 例如,將字串Double
轉換成 時,請使用 Double.Parse 。
InvalidCastException可能會擲回例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。
' These examples cause run-time errors.
Console.WriteLine(Val("1.34%"))
Console.WriteLine(Val("1.34&"))
如果編譯程式未包含在字串中,則格式化為 Double
和 Integer
和 Long
類型字元的數位之間的衝突會遭到編譯程序攔截。
' These examples cause compiler errors.
Dim m = 1.34%
Dim n = 1.34&
另請參閱
適用於
Val(String)
以適當類型的數值傳回包含在字串中的數字。
public:
static double Val(System::String ^ InputStr);
public static double Val (string? InputStr);
public static double Val (string InputStr);
static member Val : string -> double
Public Function Val (InputStr As String) As Double
參數
- InputStr
- String
必要。 任何有效的 String
運算式、Object
變數或 Char
值。 如果 Expression
的型別為 Object
,其值必須可轉換成 String
,否則會發生 ArgumentException 錯誤。
傳回
以適當類型數值包含在字串中的數字。
例外狀況
InputStr
太大。
Expression
是 Object
類型運算式,無法轉換成 String
。
範例
下列範例會 Val
使用 函式傳回每個字串中包含的數位。 Val
會在無法解譯為數值、數值修飾詞、數值標點符號或空格符的第一個字元停止轉換。
Dim valResult As Double
' The following line of code sets valResult to 2457.
valResult = Val("2457")
' The following line of code sets valResult to 2457.
valResult = Val(" 2 45 7")
' The following line of code sets valResult to 24.
valResult = Val("24 and 57")
備註
函 Val
式會在無法辨識為數位一部分的第一個字元停止讀取字串。 無法辨識通常被視為數值部分的符號和字元,例如貨幣符號和逗號。 不過,函式會辨識八進位) 的基底前置 &O
詞 (,並 &H
辨識十六進位) 的 (。 會從 自變數中移除空白、索引標籤和換行字元。
下列呼叫會傳回值1234123。
Val(" 1234 123th Street N.E.")
下列呼叫會傳回十進位值 -1。
Val("&HFFFF")
注意
函 Val
式只會將句號 () .
辨識為有效的小數分隔符。 使用其他小數分隔符時,如同在國際應用程式中,請使用 CDbl
或 CInt
改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider)
方法。 例如,將字串Double
轉換成 時,請使用 Double.Parse 。
注意
InvalidCastException可能會引發例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。
' These examples cause run-time errors.
'Console.WriteLine(Val("1.34%"))
'Console.WriteLine(Val("1.34&"))
如果衝突未包含在字串中,編譯程式就會攔截格式化為 Double
和 Integer
Long
類型字元的數位之間的衝突。
' These examples cause compiler errors.
'Dim m = 1.34%
'Dim n = 1.34&