Version.Parse Método

Definição

Sobrecargas

Parse(ReadOnlySpan<Char>)

Converte o intervalo de caracteres somente leitura especificado que representa um número de versão em um objeto Version equivalente.

Parse(String)

Converte a representação da cadeia de caracteres de um número de versão em um objeto Version equivalente.

Parse(ReadOnlySpan<Char>)

Converte o intervalo de caracteres somente leitura especificado que representa um número de versão em um objeto Version equivalente.

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

Parâmetros

input
ReadOnlySpan<Char>

Um intervalo somente leitura de caracteres que contém um número de versão a ser convertido.

Retornos

Um objeto equivalente ao número de versão especificado no parâmetro input.

Exceções

input tem menos de dois ou mais de quatro componentes de versão.

Pelo menos um componente no input é menor que zero.

Pelo menos um componente no input não é um inteiro.

Pelo menos um componente em input representa um número maior que Int32.MaxValue.

Comentários

O input parâmetro deve ter o seguinte formato:

major.minor[.build[.revision]]

em que major, minor, builde revision são as representações de cadeia de caracteres dos quatro componentes do número de versão: número de versão principal, número de versão secundária, número de build e número de revisão, respectivamente. Os componentes opcionais são mostrados entre colchetes ([ e ]). Os componentes devem aparecer na ordem especificada e devem ser separados por períodos.

Aplica-se a

Parse(String)

Converte a representação da cadeia de caracteres de um número de versão em um objeto Version equivalente.

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

Parâmetros

input
String

Uma cadeia de caracteres que contém um número de versão a ser convertido.

Retornos

Um objeto equivalente ao número de versão especificado no parâmetro input.

Exceções

input é null.

input tem menos de dois ou mais de quatro componentes de versão.

Pelo menos um componente no input é menor que zero.

Pelo menos um componente no input não é um inteiro.

Pelo menos um componente em input representa um número maior que Int32.MaxValue.

Exemplos

O exemplo a seguir usa o Parse método para analisar várias cadeias de caracteres que contêm informações de versão.

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'.

Comentários

O input parâmetro deve ter o seguinte formato:

major.minor[.build[.revision]]

em que major, minor, builde revision são as representações de cadeia de caracteres dos quatro componentes do número de versão: número de versão principal, número de versão secundária, número de build e número de revisão, respectivamente. Os componentes opcionais são mostrados entre colchetes ([ e ]). Os componentes devem aparecer na ordem especificada e devem ser separados por períodos.

Importante

Como a representação de cadeia de caracteres de um número de versão deve estar em conformidade com um padrão reconhecido, os aplicativos sempre devem usar o tratamento de exceção ao chamar o Parse método para analisar a entrada do usuário. Como alternativa, você pode chamar o TryParse método para analisar a representação de cadeia de caracteres de um número de versão e retornar um valor que indica se a operação de análise foi bem-sucedida.

O Parse método é um método de conveniência; é equivalente a chamar o Version(String) construtor.

Confira também

Aplica-se a