Conversion.Val 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回作为适当类型的数值的字符串中包含的数字。
重载
| 名称 | 说明 |
|---|---|
| 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,则其值必须可转换为 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.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,则其值必须可转换为 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.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,则其值必须可转换为 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.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&