Enum.ToString 方法

定義

將這個執行個體的值轉換為它的相等字串表示。

多載

ToString(String, IFormatProvider)
已淘汰.
已淘汰.

這個方法多載已淘汰,請改用 ToString(String)

ToString()

將這個執行個體的值轉換為它的相等字串表示。

ToString(String)

使用指定格式,將這個執行個體的值轉換為它的相等字串表示。

ToString(IFormatProvider)
已淘汰.
已淘汰.

這個方法多載已淘汰,請改用 ToString()

ToString(String, IFormatProvider)

警告

The provider argument is not used. Please use ToString(String).

警告

The provider argument is not used. Use ToString(String) instead.

這個方法多載已淘汰,請改用 ToString(String)

public:
 virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ provider);
[System.Obsolete("The provider argument is not used. Please use ToString(String).")]
public string ToString (string? format, IFormatProvider? provider);
[System.Obsolete("The provider argument is not used. Use ToString(String) instead.")]
public string ToString (string? format, IFormatProvider? provider);
[System.Obsolete("The provider argument is not used. Please use ToString(String).")]
public string ToString (string format, IFormatProvider provider);
public string ToString (string format, IFormatProvider provider);
[<System.Obsolete("The provider argument is not used. Please use ToString(String).")>]
override this.ToString : string * IFormatProvider -> string
[<System.Obsolete("The provider argument is not used. Use ToString(String) instead.")>]
override this.ToString : string * IFormatProvider -> string
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, provider As IFormatProvider) As String

參數

format
String

格式規格。

provider
IFormatProvider

(已過時。)

傳回

這個執行個體值的字串表示,如同 format 所指定。

實作

屬性

例外狀況

format 不包含有效的格式規格。

format 等於 "X",但列舉類型未知。

備註

參數 format 可以是下列其中一個格式字串:「G」 或 「g」、「D」 或 「d」、「X」 或 「x」,以及 「F」 或 「f」 (格式字串不區分大小寫) 。 如果 為 formatnull 或空字串 (「」「) ,則會使用一般格式規範 (」G「) 。 如需列舉格式字串和格式化列舉值的詳細資訊,請參閱 列舉格式字串。 如需一般格式的詳細資訊,請參閱 格式化類型

format 指定 ; provider 參數已過時。

另請參閱

適用於

ToString()

將這個執行個體的值轉換為它的相等字串表示。

public:
 override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

傳回

這個執行個體值的字串表示。

範例

下列範例示範如何將列舉值轉換為字串。

using namespace System;
public ref class EnumSample
{
public:
   enum class Colors
   {
      Red = 1,
      Blue = 2
   };

   static void main()
   {
      Enum ^ myColors = Colors::Red;
      Console::WriteLine( "The value of this instance is '{0}'", myColors );
   }

};

int main()
{
   EnumSample::main();
}

/*
Output.
The value of this instance is 'Red'.
*/
using System;

public class EnumSample {
    enum Colors {Red = 1, Blue = 2};

    public static void Main() {
        Enum myColors = Colors.Red;
        Console.WriteLine("The value of this instance is '{0}'",
           myColors.ToString());
    }
}
/*
Output.
The value of this instance is 'Red'.
*/
type Colors =
    | Red = 1
    | Blue = 2

let myColors = Colors.Red
printfn $"The value of this instance is '{myColors.ToString()}'"

// Output.
// The value of this instance is 'Red'.
Public Class EnumSample    
    Enum Colors
        Red = 1
        Blue = 2
    End Enum
    
    Public Shared Sub Main()
        Dim myColors As Colors = Colors.Red
        Console.WriteLine("The value of this instance is '{0}'", _
           myColors.ToString())
    End Sub
End Class

'Output.
'The value of this instance is 'Red'.

備註

傳回值會使用一般格式規範來格式化 (「G」) 。 也就是說,如果 FlagsAttribute 未套用至這個列舉型別,而且有等於這個實例值的具名常數,則傳回值會是包含常數名稱的字串。 如果 已套用 , FlagsAttribute 而且有一或多個具名常數的組合等於這個實例的值,則傳回值是字串,其中包含常數名稱的分隔符號分隔清單。 否則,傳回值是這個實例之數值的字串表示。 如需格式化列舉值的詳細資訊,請參閱 列舉格式字串。 如需一般格式的詳細資訊,請參閱 格式化類型

給呼叫者的注意事項

如果多個列舉成員具有相同的基礎值,而且您嘗試根據其基礎值擷取列舉成員名稱的字串標記法,則您的程式碼不應該假設方法將傳回的名稱。 例如,下列列舉會定義兩個成員 和 Shade.GrayShade.Grey 具有相同基礎值的 。

enum Shade
{
    White = 0, Gray = 1, Grey = 1, Black = 2
}
type Shade =
    | White = 0
    | Gray = 1
    | Grey = 1
    | Black = 2
Public Enum Shade
   White = 0
   Gray = 1
   Grey = 1
   Black = 2
End Enum

下列方法呼叫會嘗試擷取其基礎值為 1 之 Shade 列舉成員的名稱。 方法可以傳回 「Gray」 或 「Gray」,而且您的程式碼不應該假設將傳回哪一個字串。

string shadeName = ((Shade) 1).ToString();
let shadeName = (enum<Shade> 1).ToString()
Dim shadeName As String = CType(1, Shade).ToString()

另請參閱

適用於

ToString(String)

使用指定格式,將這個執行個體的值轉換為它的相等字串表示。

public:
 System::String ^ ToString(System::String ^ format);
public string ToString (string format);
public string ToString (string? format);
override this.ToString : string -> string
Public Function ToString (format As String) As String

參數

format
String

格式字串。

傳回

這個執行個體值的字串表示,如同 format 所指定。

例外狀況

format 包含無效的規格。

format 等於 "X",但列舉類型未知。

範例

下列範例示範如何將列舉值轉換成字串。

// Sample for Enum::ToString(String)

using namespace System;

public enum class Colors
{
   Red, Green, Blue, Yellow = 12
};

int main()
{
   Colors myColor = Colors::Yellow;
   Console::WriteLine( "Colors::Red = {0}", Colors::Red.ToString( "d" ) );
   Console::WriteLine( "Colors::Green = {0}", Colors::Green.ToString( "d" ) );
   Console::WriteLine( "Colors::Blue = {0}", Colors::Blue.ToString( "d" ) );
   Console::WriteLine( "Colors::Yellow = {0}", Colors::Yellow.ToString( "d" ) );
   Console::WriteLine( " {0}myColor = Colors::Yellow {0}", Environment::NewLine );
   Console::WriteLine( "myColor->ToString(\"g\") = {0}", myColor.ToString( "g" ) );
   Console::WriteLine( "myColor->ToString(\"G\") = {0}", myColor.ToString( "G" ) );
   Console::WriteLine( "myColor->ToString(\"x\") = {0}", myColor.ToString( "x" ) );
   Console::WriteLine( "myColor->ToString(\"X\") = {0}", myColor.ToString( "X" ) );
   Console::WriteLine( "myColor->ToString(\"d\") = {0}", myColor.ToString( "d" ) );
   Console::WriteLine( "myColor->ToString(\"D\") = {0}", myColor.ToString( "D" ) );
   Console::WriteLine( "myColor->ToString(\"f\") = {0}", myColor.ToString( "f" ) );
   Console::WriteLine( "myColor->ToString(\"F\") = {0}", myColor.ToString( "F" ) );
}

/*
This example produces the following results:
Colors::Red = 0
Colors::Green = 1
Colors::Blue = 2
Colors::Yellow = 12

myColor = Colors::Yellow

myColor->ToString("g") = Yellow
myColor->ToString("G") = Yellow
myColor->ToString("x") = 0000000C
myColor->ToString("X") = 0000000C
myColor->ToString("d") = 12
myColor->ToString("D") = 12
myColor->ToString("f") = Yellow
myColor->ToString("F") = Yellow
*/
// Sample for Enum.ToString(String)
using System;

class Sample
{
    enum Colors {Red, Green, Blue, Yellow = 12};

    public static void Main()
    {
    Colors myColor = Colors.Yellow;

    Console.WriteLine("Colors.Red = {0}", Colors.Red.ToString("d"));
    Console.WriteLine("Colors.Green = {0}", Colors.Green.ToString("d"));
    Console.WriteLine("Colors.Blue = {0}", Colors.Blue.ToString("d"));
    Console.WriteLine("Colors.Yellow = {0}", Colors.Yellow.ToString("d"));

    Console.WriteLine("{0}myColor = Colors.Yellow{0}", Environment.NewLine);

    Console.WriteLine("myColor.ToString(\"g\") = {0}", myColor.ToString("g"));
    Console.WriteLine("myColor.ToString(\"G\") = {0}", myColor.ToString("G"));

    Console.WriteLine("myColor.ToString(\"x\") = {0}", myColor.ToString("x"));
    Console.WriteLine("myColor.ToString(\"X\") = {0}", myColor.ToString("X"));

    Console.WriteLine("myColor.ToString(\"d\") = {0}", myColor.ToString("d"));
    Console.WriteLine("myColor.ToString(\"D\") = {0}", myColor.ToString("D"));

    Console.WriteLine("myColor.ToString(\"f\") = {0}", myColor.ToString("f"));
    Console.WriteLine("myColor.ToString(\"F\") = {0}", myColor.ToString("F"));
    }
}
/*
This example produces the following results:
Colors.Red = 0
Colors.Green = 1
Colors.Blue = 2
Colors.Yellow = 12

myColor = Colors.Yellow

myColor.ToString("g") = Yellow
myColor.ToString("G") = Yellow
myColor.ToString("x") = 0000000C
myColor.ToString("X") = 0000000C
myColor.ToString("d") = 12
myColor.ToString("D") = 12
myColor.ToString("f") = Yellow
myColor.ToString("F") = Yellow
*/
// Sample for Enum.ToString(String)
open System

type Colors =
    | Red = 0 
    | Green = 1 
    | Blue = 2 
    | Yellow = 12

let myColor = Colors.Yellow

printfn $"""Colors.Red = {Colors.Red.ToString "d"}"""
printfn $"""Colors.Green = {Colors.Green.ToString "d"}"""
printfn $"""Colors.Blue = {Colors.Blue.ToString "d"}"""
printfn $"""Colors.Yellow = {Colors.Yellow.ToString "d"}"""

printfn "\nmyColor = Colors.Yellow\n"

printfn $"""myColor.ToString("g") = {myColor.ToString "g"}"""
printfn $"""myColor.ToString("G") = {myColor.ToString "G"}"""

printfn $"""myColor.ToString("x") = {myColor.ToString "x"}"""
printfn $"""myColor.ToString("X") = {myColor.ToString "X"}"""

printfn $"""myColor.ToString("d") = {myColor.ToString "d"}"""
printfn $"""myColor.ToString("D") = {myColor.ToString "d"}"""

printfn $"""myColor.ToString("f") = {myColor.ToString "f"}"""
printfn $"""myColor.ToString("F") = {myColor.ToString "F"}"""

// This example produces the following results:
//     Colors.Red = 0
//     Colors.Green = 1
//     Colors.Blue = 2
//     Colors.Yellow = 12
//    
//     myColor = Colors.Yellow
//    
//     myColor.ToString("g") = Yellow
//     myColor.ToString("G") = Yellow
//     myColor.ToString("x") = 0000000C
//     myColor.ToString("X") = 0000000C
//     myColor.ToString "d" = 12
//     myColor.ToString "d" = 12
//     myColor.ToString("f") = Yellow
//     myColor.ToString("F") = Yellow
' Sample for Enum.ToString(String)
Class Sample
   Enum Colors
      Red
      Green
      Blue
      Yellow = 12
   End Enum 'Colors
   
   Public Shared Sub Main()
      Dim myColor As Colors = Colors.Yellow
      
      Console.WriteLine("Colors.Red = {0}", Colors.Red.ToString("d"))
      Console.WriteLine("Colors.Green = {0}", Colors.Green.ToString("d"))
      Console.WriteLine("Colors.Blue = {0}", Colors.Blue.ToString("d"))
      Console.WriteLine("Colors.Yellow = {0}", Colors.Yellow.ToString("d"))
      
      Console.WriteLine("{0}myColor = Colors.Yellow{0}", Environment.NewLine)
      
      Console.WriteLine("myColor.ToString(""g"") = {0}", myColor.ToString("g"))
      Console.WriteLine("myColor.ToString(""G"") = {0}", myColor.ToString("G"))
      
      Console.WriteLine("myColor.ToString(""x"") = {0}", myColor.ToString("x"))
      Console.WriteLine("myColor.ToString(""X"") = {0}", myColor.ToString("X"))
      
      Console.WriteLine("myColor.ToString(""d"") = {0}", myColor.ToString("d"))
      Console.WriteLine("myColor.ToString(""D"") = {0}", myColor.ToString("D"))
      
      Console.WriteLine("myColor.ToString(""f"") = {0}", myColor.ToString("f"))
      Console.WriteLine("myColor.ToString(""F"") = {0}", myColor.ToString("F"))
   End Sub
End Class
'
'This example produces the following results:
'
'Colors.Red = 0
'Colors.Green = 1
'Colors.Blue = 2
'Colors.Yellow = 12
'
'myColor = Colors.Yellow
'
'myColor.ToString("g") = Yellow
'myColor.ToString("G") = Yellow
'myColor.ToString("x") = 0000000C
'myColor.ToString("X") = 0000000C
'myColor.ToString("d") = 12
'myColor.ToString("D") = 12
'myColor.ToString("f") = Yellow
'myColor.ToString("F") = Yellow
'

備註

參數 format 可以是下列其中一個格式字串:「G」 或 「g」、「D」 或 「d」、「X」 或 「x」,以及 「F」 或 「f」 (格式字串不區分大小寫) 。 如果 為 formatnull 或空字串 (「」「) ,則會使用一般格式規範 (」G「) 。 如需列舉格式字串和格式化列舉值的詳細資訊,請參閱 列舉格式字串。 如需一般格式的詳細資訊,請參閱 格式化類型

給呼叫者的注意事項

如果多個列舉成員具有相同的基礎值,而且您嘗試根據其基礎值擷取列舉成員名稱的字串標記法,則您的程式碼不應該假設方法將傳回的名稱。 例如,下列列舉會定義兩個成員 和 Shade.GrayShade.Grey 具有相同基礎值的 。

enum Shade
{
    White = 0, Gray = 1, Grey = 1, Black = 2
}
type Shade =
    | White = 0
    | Gray = 1
    | Grey = 1
    | Black = 2
Public Enum Shade
   White = 0
   Gray = 1
   Grey = 1
   Black = 2
End Enum

下列方法呼叫會嘗試擷取其基礎值為 1 之 Shade 列舉成員的名稱。 方法可以傳回 「Gray」 或 「Gray」,而且您的程式碼不應該假設將傳回哪一個字串。

string shadeName = ((Shade) 1).ToString("F");
let shadeName = (enum<Shade> 1).ToString "F"
Dim shadeName As String = CType(1, Shade).ToString("F")

另請參閱

適用於

ToString(IFormatProvider)

警告

The provider argument is not used. Please use ToString().

警告

The provider argument is not used. Use ToString() instead.

這個方法多載已淘汰,請改用 ToString()

public:
 virtual System::String ^ ToString(IFormatProvider ^ provider);
[System.Obsolete("The provider argument is not used. Please use ToString().")]
public string ToString (IFormatProvider? provider);
[System.Obsolete("The provider argument is not used. Use ToString() instead.")]
public string ToString (IFormatProvider? provider);
[System.Obsolete("The provider argument is not used. Please use ToString().")]
public string ToString (IFormatProvider provider);
public string ToString (IFormatProvider provider);
[<System.Obsolete("The provider argument is not used. Please use ToString().")>]
override this.ToString : IFormatProvider -> string
[<System.Obsolete("The provider argument is not used. Use ToString() instead.")>]
override this.ToString : IFormatProvider -> string
override this.ToString : IFormatProvider -> string
Public Function ToString (provider As IFormatProvider) As String

參數

provider
IFormatProvider

(已過時)

傳回

這個執行個體值的字串表示。

實作

屬性

適用於