Version.Parse Метод

Определение

Перегрузки

Имя Описание
Parse(ReadOnlySpan<Byte>)

Преобразует указанный диапазон символов UTF-8, который представляет номер версии в эквивалентный объект Version.

Parse(ReadOnlySpan<Char>)

Преобразует указанный диапазон символов, доступных только для чтения, который представляет номер версии в эквивалентный Version объект.

Parse(String)

Преобразует строковое представление номера версии в эквивалентный Version объект.

Parse(ReadOnlySpan<Byte>)

Исходный код:
Version.cs
Исходный код:
Version.cs

Преобразует указанный диапазон символов UTF-8, который представляет номер версии в эквивалентный объект Version.

public:
 static Version ^ Parse(ReadOnlySpan<System::Byte> utf8Text);
public static Version Parse(ReadOnlySpan<byte> utf8Text);
static member Parse : ReadOnlySpan<byte> -> Version
Public Shared Function Parse (utf8Text As ReadOnlySpan(Of Byte)) As Version

Параметры

utf8Text
ReadOnlySpan<Byte>

Диапазон символов UTF-8, содержащих номер версии для преобразования.

Возвращаемое значение

Объект, эквивалентный номеру версии, указанному в параметре utf8Text .

Исключения

utf8Text имеет менее двух или более четырех компонентов версии.

По крайней мере один компонент меньше utf8Text нуля.

Хотя бы один компонент в utf8Text не является целым числом.

По крайней мере один компонент представляет utf8Text число, которое больше MaxValue.

Применяется к

Parse(ReadOnlySpan<Char>)

Исходный код:
Version.cs
Исходный код:
Version.cs
Исходный код:
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, minorbuildи revision являются строковыми представлениями четырех компонентов номера версии: основной номер версии, дополнительный номер версии, номер сборки и номер редакции соответственно. Необязательные компоненты отображаются в квадратных скобках ([ и ]). Компоненты должны отображаться в указанном порядке и должны быть разделены по периодам.

Применяется к

Parse(String)

Исходный код:
Version.cs
Исходный код:
Version.cs
Исходный код:
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, minorbuildи revision являются строковыми представлениями четырех компонентов номера версии: основной номер версии, дополнительный номер версии, номер сборки и номер редакции соответственно. Необязательные компоненты отображаются в квадратных скобках ([ и ]). Компоненты должны отображаться в указанном порядке и должны быть разделены по периодам.

Important

Поскольку строковое представление номера версии должно соответствовать распознаваемой схеме, приложения всегда должны использовать обработку исключений при вызове Parse метода для анализа входных данных пользователя. Кроме того, можно вызвать TryParse метод, чтобы проанализировать строковое представление номера версии и вернуть значение, указывающее, выполнена ли операция синтаксического анализа.

Метод — это удобный метод. Он Parse эквивалентен вызову конструктора Version(String) .

См. также раздел

Применяется к