Conversion.Val 方法

定義

以適當類型的數值傳回包含在字串中的數字。

多載

Val(Object)

以適當類型的數值傳回包含在字串中的數字。

Val(Char)

以適當類型的數值傳回包含在字串中的數字。

Val(String)

以適當類型的數值傳回包含在字串中的數字。

Val(Object)

來源:
Conversion.vb
來源:
Conversion.vb
來源:
Conversion.vb

以適當類型的數值傳回包含在字串中的數字。

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 太大。

ExpressionObject 類型運算式,無法轉換成 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 式只會將句號 () . 辨識為有效的小數分隔符。 使用其他小數分隔符時,如同在國際應用程式中,請使用 CDblCInt 改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider) 方法。 例如,將字串Double轉換成 時,請使用 Double.Parse

注意

InvalidCastException可能會擲回例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。

' These examples cause run-time errors.

'Console.WriteLine(Val("1.34%"))

'Console.WriteLine(Val("1.34&"))

如果衝突未包含在字串中,編譯程式就會攔截格式化為 DoubleIntegerLong 類型字元的數位之間的衝突。

' These examples cause compiler errors.

'Dim m = 1.34%

'Dim n = 1.34&

另請參閱

適用於

Val(Char)

來源:
Conversion.vb
來源:
Conversion.vb
來源:
Conversion.vb

以適當類型的數值傳回包含在字串中的數字。

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 太大。

ExpressionObject 類型運算式,無法轉換成 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 式只會將句號 () . 辨識為有效的小數分隔符。 使用不同的小數分隔符時,如同在國際應用程式中,請使用 CDblCInt 改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider) 方法。 例如,將字串Double轉換成 時,請使用 Double.Parse

InvalidCastException可能會擲回例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。

' These examples cause run-time errors.  
Console.WriteLine(Val("1.34%"))  
Console.WriteLine(Val("1.34&"))  

如果編譯程式未包含在字串中,則格式化為 DoubleIntegerLong 類型字元的數位之間的衝突會遭到編譯程序攔截。

' These examples cause compiler errors.  
Dim m = 1.34%  
Dim n = 1.34&

另請參閱

適用於

Val(String)

來源:
Conversion.vb
來源:
Conversion.vb
來源:
Conversion.vb

以適當類型的數值傳回包含在字串中的數字。

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 太大。

ExpressionObject 類型運算式,無法轉換成 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 式只會將句號 () . 辨識為有效的小數分隔符。 使用其他小數分隔符時,如同在國際應用程式中,請使用 CDblCInt 改為將字串轉換成數位。 若要將特定文化特性中數位的字串表示轉換為數值,請使用數值類型的 Parse(String, IFormatProvider) 方法。 例如,將字串Double轉換成 時,請使用 Double.Parse

注意

InvalidCastException可能會引發例外狀況,以回應某些不常見的數位格式。 例如,下列程式代碼會引發這個例外狀況。

' These examples cause run-time errors.

'Console.WriteLine(Val("1.34%"))

'Console.WriteLine(Val("1.34&"))

如果衝突未包含在字串中,編譯程式就會攔截格式化為 DoubleIntegerLong 類型字元的數位之間的衝突。

' These examples cause compiler errors.

'Dim m = 1.34%

'Dim n = 1.34&

另請參閱

適用於