Version.Parse 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
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) 構函式。