Compartir vía


Version.Parse Método

Definición

Sobrecargas

Parse(ReadOnlySpan<Char>)

Convierte el intervalo de caracteres de solo lectura especificado que representa un número de versión en un objeto Version equivalente.

Parse(String)

Convierte la representación de cadena de un número de versión en un objeto Version equivalente.

Parse(ReadOnlySpan<Char>)

Source:
Version.cs
Source:
Version.cs
Source:
Version.cs

Convierte el intervalo de caracteres de solo lectura especificado que representa un número de versión en un 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>

Intervalo de caracteres de solo lectura que contiene un número de versión que se va a convertir.

Devoluciones

Objeto equivalente al número de versión especificado en el parámetro input.

Excepciones

input tiene menos de dos componentes de versión o más de cuatro.

Al menos un componente de input es menor que cero.

Al menos un componente de input no es un entero.

Al menos un componente de input representa un número mayor que Int32.MaxValue.

Comentarios

El input parámetro debe tener el formato siguiente:

major.minor[.build[.revision]]

donde major, minor, buildy revision son las representaciones de cadena de los cuatro componentes del número de versión: número de versión principal, número de versión secundaria, número de compilación y número de revisión, respectivamente. Los componentes opcionales se muestran entre corchetes ([ y ]). Los componentes deben aparecer en el orden especificado y deben estar separados por puntos.

Se aplica a

Parse(String)

Source:
Version.cs
Source:
Version.cs
Source:
Version.cs

Convierte la representación de cadena de un número de versión en un 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

Cadena que contiene un número de versión que se va a convertir.

Devoluciones

Objeto equivalente al número de versión especificado en el parámetro input.

Excepciones

input es null.

input tiene menos de dos componentes de versión o más de cuatro.

Al menos un componente de input es menor que cero.

Al menos un componente de input no es un entero.

Al menos un componente de input representa un número mayor que Int32.MaxValue.

Ejemplos

En el ejemplo siguiente se usa el Parse método para analizar una serie de cadenas que contienen información de versión.

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

Comentarios

El input parámetro debe tener el formato siguiente:

major.minor[.build[.revision]]

donde major, minor, buildy revision son las representaciones de cadena de los cuatro componentes del número de versión: número de versión principal, número de versión secundaria, número de compilación y número de revisión, respectivamente. Los componentes opcionales se muestran entre corchetes ([ y ]). Los componentes deben aparecer en el orden especificado y deben estar separados por puntos.

Importante

Dado que la representación de cadena de un número de versión debe ajustarse a un patrón reconocido, las aplicaciones siempre deben usar el control de excepciones al llamar al método para analizar la entrada del Parse usuario. Como alternativa, puede llamar al TryParse método para analizar la representación de cadena de un número de versión y devolver un valor que indica si la operación de análisis se realizó correctamente.

El Parse método es un método de conveniencia; equivale a llamar al Version(String) constructor .

Consulte también

Se aplica a