Version.TryParse Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
TryParse(String, Version) |
Tries to convert the string representation of a version number to an equivalent Version object, and returns a value that indicates whether the conversion succeeded. |
TryParse(ReadOnlySpan<Char>, Version) |
Tries to convert the specified read-only span of characters representing a version number to an equivalent Version object, and returns a value that indicates whether the conversion succeeded. |
TryParse(String, Version)
- Source:
- Version.cs
- Source:
- Version.cs
- Source:
- Version.cs
Tries to convert the string representation of a version number to an equivalent Version object, and returns a value that indicates whether the conversion succeeded.
public:
static bool TryParse(System::String ^ input, [Runtime::InteropServices::Out] Version ^ % result);
public static bool TryParse (string input, out Version result);
public static bool TryParse (string? input, out Version? result);
static member TryParse : string * Version -> bool
Public Shared Function TryParse (input As String, ByRef result As Version) As Boolean
Parameters
- input
- String
A string that contains a version number to convert.
- result
- Version
When this method returns, contains the Version equivalent of the number that is contained in input
, if the conversion succeeded. If input
is null
, Empty, or if the conversion fails, result
is null
when the method returns.
Returns
true
if the input
parameter was converted successfully; otherwise, false
.
Examples
The following example uses the TryParse method to parse a number of strings that contain version information.
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)
{
Version ver = null;
if (Version.TryParse(input, out ver))
Console.WriteLine("Converted '{0} to {1}.", input, ver);
else
Console.WriteLine("Unable to determine the version from '{0}'.",
input);
}
}
// The example displays the following output:
// Converted '4.0 to 4.0.
// Unable to determine the version from '4.0.'.
// Converted '1.1.2 to 1.1.2.
// Converted '1.1.2.01702 to 1.1.2.1702.
// Unable to determine the version from '1.1.2.0702.119'.
// Unable to determine the version from '1.3.5.2150000000'.
open System
let parseVersion (input: string) =
match Version.TryParse input with
| true, ver ->
printfn $"Converted '{input} to {ver}."
| _ ->
printfn $"Unable to determine the version from '{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.
// Unable to determine the version from '4.0.'.
// Converted '1.1.2 to 1.1.2.
// Converted '1.1.2.01702 to 1.1.2.1702.
// Unable to determine the version from '1.1.2.0702.119'.
// Unable to determine the version from '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)
Dim ver As Version = Nothing
If Version.TryParse(input, ver) Then
Console.WriteLine("Converted '{0} to {1}.", input, ver)
Else
Console.WriteLine("Unable to determine the version from '{0}'.",
input)
End If
End Sub
End Module
' The example displays the following output:
' Converted '4.0 to 4.0.
' Unable to determine the version from '4.0.'.
' Converted '1.1.2 to 1.1.2.
' Converted '1.1.2.01702 to 1.1.2.1702.
' Unable to determine the version from '1.1.2.0702.119'.
' Unable to determine the version from '1.3.5.2150000000'.
Remarks
The TryParse
method is similar to the Parse method, except that it doesn't throw an exception if the conversion fails. Instead, it returns false
if input
is null
, has fewer than two or more than four components, has at least one component that is not an integer, has at least one component that is less than zero, or has at least one component that is greater than Int32.MaxValue.
For the parse operation to succeed, the input
parameter must be in the following format:
major.minor[.build[.revision]]
where major
, minor
, build
, and revision
are the string representations of the version number's four components: major version number, minor version number, build number, and revision number, respectively. Optional components are shown in square brackets ([ and ]). The components must appear in order and must be separated by periods.
See also
Applies to
TryParse(ReadOnlySpan<Char>, Version)
- Source:
- Version.cs
- Source:
- Version.cs
- Source:
- Version.cs
Tries to convert the specified read-only span of characters representing a version number to an equivalent Version object, and returns a value that indicates whether the conversion succeeded.
public:
static bool TryParse(ReadOnlySpan<char> input, [Runtime::InteropServices::Out] Version ^ % result);
public static bool TryParse (ReadOnlySpan<char> input, out Version? result);
public static bool TryParse (ReadOnlySpan<char> input, out Version result);
static member TryParse : ReadOnlySpan<char> * Version -> bool
Public Shared Function TryParse (input As ReadOnlySpan(Of Char), ByRef result As Version) As Boolean
Parameters
- input
- ReadOnlySpan<Char>
A read-only span of characters that contains a version number to convert.
- result
- Version
When this method returns, contains the Version equivalent of the number that is contained in input
, if the conversion succeeded. If input
is null
, Empty, or if the conversion fails, result
is null
when the method returns.
Returns
true
if the input
parameter was converted successfully; otherwise, false
.
Remarks
The TryParse
method is similar to the Parse method, except that it doesn't throw an exception if the conversion fails. Instead, it returns false
if input
is null
, has fewer than two or more than four components, has at least one component that is not an integer, has at least one component that is less than zero, or has at least one component that is greater than Int32.MaxValue.
For the parse operation to succeed, the input
parameter must be in the following format:
major.minor[.build[.revision]]
where major
, minor
, build
, and revision
are the string representations of the version number's four components: major version number, minor version number, build number, and revision number, respectively. Optional components are shown in square brackets ([ and ]). The components must appear in order and must be separated by periods.