Conversion.Val Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает числа, содержащиеся в строке в качестве числового значения соответствующего типа.
Перегрузки
| Имя | Описание |
|---|---|
| Val(Object) |
Возвращает числа, содержащиеся в строке в качестве числового значения соответствующего типа. |
| Val(Char) |
Возвращает числа, содержащиеся в строке в качестве числового значения соответствующего типа. |
| Val(String) |
Возвращает числа, содержащиеся в строке в качестве числового значения соответствующего типа. |
Val(Object)
- Исходный код:
- Conversion.vb
- Исходный код:
- Conversion.vb
- Исходный код:
- 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 слишком велик.
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")
Note
Функция Val распознает только период (.) как допустимый десятичный разделитель. Если используются другие десятичные разделители, как в международных приложениях, используйте CDbl или CInt вместо этого преобразуйте строку в число. Чтобы преобразовать строковое представление числа в определенном языке и региональных параметрах в числовое значение, используйте метод числового типа Parse(String, IFormatProvider) . Например, используйте Double.Parse при преобразовании строки в строку Double.
Note
Исключение InvalidCastException может быть вызвано в ответ на некоторые необычные форматы чисел. Например, следующий код вызывает это исключение.
' These examples cause run-time errors.
'Console.WriteLine(Val("1.34%"))
'Console.WriteLine(Val("1.34&"))
Конфликт между числом, отформатированным как Double символом и IntegerLong символами типа, будет перехватываться компилятором, если конфликт не содержался в строках.
' These examples cause compiler errors.
'Dim m = 1.34%
'Dim n = 1.34&
См. также раздел
Применяется к
Val(Char)
- Исходный код:
- Conversion.vb
- Исходный код:
- Conversion.vb
- Исходный код:
- 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 слишком велик.
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")
Note
Функция 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&"))
Конфликт между числом, отформатированным как Double символом и IntegerLong символами типа, будет перехватываться компилятором, если он не содержался в строке.
' These examples cause compiler errors.
Dim m = 1.34%
Dim n = 1.34&
См. также раздел
Применяется к
Val(String)
- Исходный код:
- Conversion.vb
- Исходный код:
- Conversion.vb
- Исходный код:
- 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 слишком велик.
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")
Note
Функция Val распознает только период (.) как допустимый десятичный разделитель. Если используются другие десятичные разделители, как в международных приложениях, используйте CDbl или CInt вместо этого преобразуйте строку в число. Чтобы преобразовать строковое представление числа в определенном языке и региональных параметрах в числовое значение, используйте метод числового типа Parse(String, IFormatProvider) . Например, используйте Double.Parse при преобразовании строки в строку Double.
Note
Исключение InvalidCastException может быть создано в ответ на некоторые редкие форматы чисел. Например, следующий код вызывает это исключение.
' These examples cause run-time errors.
'Console.WriteLine(Val("1.34%"))
'Console.WriteLine(Val("1.34&"))
Конфликт между числом, отформатированным как Double символом и IntegerLong символами типа, будет перехватываться компилятором, если конфликт не содержался в строках.
' These examples cause compiler errors.
'Dim m = 1.34%
'Dim n = 1.34&