「C#」Enum.ToObjectで数値をenum値に変換する
書式
Enum名 res = (Enum名)Enum.ToObject(typeof(Enum名), 値);
数値をenum値に変換するには Enum.ToObject()の引数に typeof(<enum名>)と数値を指定します。
enum値に存在しない数値を指定しても例外は発生しません。
Enum.ToObject()を使用して、数値をenum値に変換します。
使用例
using System; namespace EnumDemo { class Program { static void Main(string[] args) { int val = 9; // 数値をenum値に変換 AuthEnum res = (AuthEnum)Enum.ToObject(typeof(AuthEnum), val); Console.WriteLine(res); } // enum型の定義 public enum AuthEnum :int { SUCCESS = 10, WARN = 20, FAILURE = 9 } } }
実行結果
FAILURE