[C#]System.LinqでEnum(列挙型)を文字列のリストに変換するには?

C#

どうも、ちょげ(@chogetarou)です。

System.Linqを使ってenum(列挙型)のメンバーを文字列のリスト(List)に変換する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

System.Linqを使ってenum(列挙型)を文字列のリスト(List)に変換するには、ToList()を使います。

まず、System.Linqを導入します。

using System.Linq;

次に、Enum.GetNames()を呼び出します。

GetNames()の引数でtypeof()を呼び出し、引数に列挙型を指定します。

そして、GetNames()からToList()を呼び出します。

List<string> list = Enum.GetNames(typeof(enumName)).ToList();

上記のToList()は、列挙型のメンバーを文字列のリストに変換した結果を返します。

使用例

using System;
using System.Collections.Generic;
using System.Linq;
public class Example
{
    public enum Names 
    {
        Taro = 18,
        Ryoma = 37,
        Kazuma = 16,
        Keiko = 24,
        Megumi = 10,
    }
    
    public static void Main()
    {
        List<string> names = Enum.GetNames(typeof(Names)).ToList();
        
        foreach(var name in names)
        {
            Console.WriteLine(name);
        }
    }
}

/*
    出力:
    Megumi
    Kazuma
    Taro
    Keiko
    Ryoma
*/

コメント

タイトルとURLをコピーしました