Conversion.Val 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将字符串中包含的数字作为适当类型的数值返回。
重载
Val(Object) |
将字符串中包含的数字作为适当类型的数值返回。 |
Val(Char) |
将字符串中包含的数字作为适当类型的数值返回。 |
Val(String) |
将字符串中包含的数字作为适当类型的数值返回。 |
Val(Object)
- 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
,其值必须可转换为 String
,否则将发生 ArgumentException 错误。
返回
字符串中包含的作为适当类型数值的数字。
例外
InputStr
太大。
Expression
是不可转换为 String
的 Object
类型表达式。
示例
以下示例使用 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.ParseDouble
。
注意
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)
- 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
,其值必须可转换为 String
,否则将发生 ArgumentException 错误。
返回
字符串中包含的作为适当类型数值的数字。
例外
InputStr
太大。
Expression
是不可转换为 String
的 Object
类型表达式。
示例
以下示例使用 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.ParseDouble
。
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)
- 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
,其值必须可转换为 String
,否则将发生 ArgumentException 错误。
返回
字符串中包含的作为适当类型数值的数字。
例外
InputStr
太大。
Expression
是不可转换为 String
的 Object
类型表达式。
示例
以下示例使用 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.ParseDouble
。
注意
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&