Conversion.Val 方法

定义

返回作为适当类型的数值的字符串中包含的数字。

重载

名称 说明
Val(Object)

返回作为适当类型的数值的字符串中包含的数字。

Val(Char)

返回作为适当类型的数值的字符串中包含的数字。

Val(String)

返回作为适当类型的数值的字符串中包含的数字。

Val(Object)

Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
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,则其值必须可转换为 StringArgumentException 发生错误。

返回

字符串中包含的数字作为适当类型的数值。

例外

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 函数仅将句点 (.) 识别为有效的小数分隔符。 当使用其他小数分隔符时,如国际应用程序中一样,请使用 CDblCInt 改为将字符串转换为数字。 若要将特定区域性中某个数字的字符串表示形式转换为数值,请使用数值类型的 Parse(String, IFormatProvider) 方法。 例如,Double.Parse在将字符串转换为 .Double

注释

InvalidCastException为了响应某些不常见的数字格式,可能会引发异常。 例如,以下代码引发此异常。

' These examples cause run-time errors.

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

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

如果冲突不包含在字符串中,则编译器将捕获格式化为 a Double 的数字与IntegerLong类型字符之间的冲突。

' These examples cause compiler errors.

'Dim m = 1.34%

'Dim n = 1.34&

另请参阅

适用于

Val(Char)

Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
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,则其值必须可转换为 StringArgumentException 发生错误。

返回

字符串中包含的数字作为适当类型的数值。

例外

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 函数仅将句点 (.) 识别为有效的小数分隔符。 当使用不同的小数分隔符时,如国际应用程序中一样,请使用 CDblCInt 改为将字符串转换为数字。 若要将特定区域性中某个数字的字符串表示形式转换为数值,请使用数值类型的 Parse(String, IFormatProvider) 方法。 例如,Double.Parse在将字符串转换为 .Double

InvalidCastException为了响应某些不常见的数字格式,可能会引发异常。 例如,以下代码引发此异常。

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

如果未包含在字符串中,则编译器会捕获格式化为 a Double 的数字与IntegerLong类型字符之间的冲突。

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

另请参阅

适用于

Val(String)

Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
Conversion.vb
Source:
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,则其值必须可转换为 StringArgumentException 发生错误。

返回

字符串中包含的数字作为适当类型的数值。

例外

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 函数仅将句点 (.) 识别为有效的小数分隔符。 当使用其他小数分隔符时,如国际应用程序中一样,请使用 CDblCInt 改为将字符串转换为数字。 若要将特定区域性中某个数字的字符串表示形式转换为数值,请使用数值类型的 Parse(String, IFormatProvider) 方法。 例如,Double.Parse在将字符串转换为 .Double

注释

InvalidCastException为了响应某些不常见的数字格式,可能会引发异常。 例如,以下代码引发此异常。

' These examples cause run-time errors.

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

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

如果冲突不包含在字符串中,则编译器将捕获格式化为 a Double 的数字与IntegerLong类型字符之间的冲突。

' These examples cause compiler errors.

'Dim m = 1.34%

'Dim n = 1.34&

另请参阅

适用于