Version.Parse Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
Parse(ReadOnlySpan<Char>) |
Преобразует указанный диапазон символов только для чтения, представляющий номер версии, в эквивалентный объект Version. |
Parse(String) |
Преобразует строковое представление номера версии в эквивалентный объект Version. |
Parse(ReadOnlySpan<Char>)
- Исходный код:
- Version.cs
- Исходный код:
- Version.cs
- Исходный код:
- Version.cs
Преобразует указанный диапазон символов только для чтения, представляющий номер версии, в эквивалентный объект Version.
public:
static Version ^ Parse(ReadOnlySpan<char> input);
public static Version Parse (ReadOnlySpan<char> input);
static member Parse : ReadOnlySpan<char> -> Version
Public Shared Function Parse (input As ReadOnlySpan(Of Char)) As Version
Параметры
- input
- ReadOnlySpan<Char>
Доступный только для чтения диапазон символов, содержащий номер версии для преобразования.
Возвращаемое значение
Объект, эквивалентный номеру версии, который задается параметром input
.
Исключения
В параметре input
содержится менее двух или более четырех компонентов версий.
По крайней мере один из компонентов в input
меньше нуля.
По крайней мере один из компонентов в input
не является целым числом.
По крайней мере один компонент в input
представляет число, большее, чем Int32.MaxValue.
Комментарии
Параметр input
должен иметь следующий формат:
major.minor[.build[.revision]]
где major
, minor
, build
и revision
— строковые представления четырех компонентов номера версии: основной номер версии, дополнительный номер версии, номер сборки и номер редакции соответственно. Необязательные компоненты отображаются в квадратных скобках ([ и ]). Компоненты должны отображаться в указанном порядке и разделяться точками.
Применяется к
Parse(String)
- Исходный код:
- Version.cs
- Исходный код:
- Version.cs
- Исходный код:
- Version.cs
Преобразует строковое представление номера версии в эквивалентный объект Version.
public:
static Version ^ Parse(System::String ^ input);
public static Version Parse (string input);
static member Parse : string -> Version
Public Shared Function Parse (input As String) As Version
Параметры
- input
- String
Строка, содержащая преобразуемый номер версии.
Возвращаемое значение
Объект, эквивалентный номеру версии, который задается параметром input
.
Исключения
input
имеет значение null
.
В параметре input
содержится менее двух или более четырех компонентов версий.
По крайней мере один из компонентов в input
меньше нуля.
По крайней мере один из компонентов в input
не является целым числом.
По крайней мере один компонент в input
представляет число, большее, чем Int32.MaxValue.
Примеры
В следующем примере метод используется Parse для анализа ряда строк, содержащих сведения о версии.
using System;
public class Example
{
public static void Main()
{
string input = "4.0";
ParseVersion(input);
input = "4.0.";
ParseVersion(input);
input = "1.1.2";
ParseVersion(input);
input = "1.1.2.01702";
ParseVersion(input);
input = "1.1.2.0702.119";
ParseVersion(input);
input = "1.3.5.2150000000";
ParseVersion(input);
}
private static void ParseVersion(string input)
{
try {
Version ver = Version.Parse(input);
Console.WriteLine("Converted '{0} to {1}.", input, ver);
}
catch (ArgumentNullException) {
Console.WriteLine("Error: String to be parsed is null.");
}
catch (ArgumentOutOfRangeException) {
Console.WriteLine("Error: Negative value in '{0}'.", input);
}
catch (ArgumentException) {
Console.WriteLine("Error: Bad number of components in '{0}'.",
input);
}
catch (FormatException) {
Console.WriteLine("Error: Non-integer value in '{0}'.", input);
}
catch (OverflowException) {
Console.WriteLine("Error: Number out of range in '{0}'.", input);
}
}
}
// The example displays the following output:
// Converted '4.0 to 4.0.
// Error: Non-integer value in '4.0.'.
// Converted '1.1.2 to 1.1.2.
// Converted '1.1.2.01702 to 1.1.2.1702.
// Error: Bad number of components in '1.1.2.0702.119'.
// Error: Number out of range in '1.3.5.2150000000'.
open System
let parseVersion (input: string) =
try
let ver = Version.Parse input
printfn $"Converted '{input} to {ver}."
with
| :? ArgumentNullException ->
printfn "Error: String to be parsed is null."
| :? ArgumentOutOfRangeException ->
printfn $"Error: Negative value in '{input}'."
| :? ArgumentException ->
printfn $"Error: Bad number of components in '{input}'."
| :? FormatException ->
printfn $"Error: Non-integer value in '{input}'."
| :? OverflowException ->
printfn $"Error: Number out of range in '{input}'."
[<EntryPoint>]
let main _ =
let input = "4.0"
parseVersion input
let input = "4.0."
parseVersion input
let input = "1.1.2"
parseVersion input
let input = "1.1.2.01702"
parseVersion input
let input = "1.1.2.0702.119"
parseVersion input
let input = "1.3.5.2150000000"
parseVersion input
0
// The example displays the following output:
// Converted '4.0 to 4.0.
// Error: Non-integer value in '4.0.'.
// Converted '1.1.2 to 1.1.2.
// Converted '1.1.2.01702 to 1.1.2.1702.
// Error: Bad number of components in '1.1.2.0702.119'.
// Error: Number out of range in '1.3.5.2150000000'.
Module Example
Public Sub Main()
Dim input As String = "4.0"
ParseVersion(input)
input = "4.0."
ParseVersion(input)
input = "1.1.2"
ParseVersion(input)
input = "1.1.2.01702"
ParseVersion(input)
input = "1.1.2.0702.119"
ParseVersion(input)
input = "1.3.5.2150000000"
ParseVersion(input)
End Sub
Private Sub ParseVersion(input As String)
Try
Dim ver As Version = Version.Parse(input)
Console.WriteLine("Converted '{0} to {1}.", input, ver)
Catch e As ArgumentNullException
Console.WriteLine("Error: String to be parsed is null.")
Catch e As ArgumentOutOfRangeException
Console.WriteLine("Error: Negative value in '{0}'.", input)
Catch e As ArgumentException
Console.WriteLine("Error: Bad number of components in '{0}'.",
input)
Catch e As FormatException
Console.WriteLine("Error: Non-integer value in '{0}'.", input)
Catch e As OverflowException
Console.WriteLine("Error: Number out of range in '{0}'.", input)
End Try
End Sub
End Module
' The example displays the following output:
' Converted '4.0 to 4.0.
' Error: Non-integer value in '4.0.'.
' Converted '1.1.2 to 1.1.2.
' Converted '1.1.2.01702 to 1.1.2.1702.
' Error: Bad number of components in '1.1.2.0702.119'.
' Error: Number out of range in '1.3.5.2150000000'.
Комментарии
Параметр input
должен иметь следующий формат:
major.minor[.build[.revision]]
где major
, minor
, build
и revision
— строковые представления четырех компонентов номера версии: основной номер версии, дополнительный номер версии, номер сборки и номер редакции соответственно. Необязательные компоненты отображаются в квадратных скобках ([ и ]). Компоненты должны отображаться в указанном порядке и разделяться точками.
Важно!
Поскольку строковое представление номера версии должно соответствовать распознанму шаблону, приложения всегда должны использовать обработку исключений при вызове Parse метода для анализа введенных пользователем данных. Кроме того, можно вызвать TryParse метод для анализа строкового представления номера версии и вернуть значение, указывающее, успешно ли выполнена операция синтаксического анализа.
Метод Parse является удобным методом; он эквивалентен вызову конструктора Version(String) .