【C#】枚举和字符串以及数字之间的互相转换

准备条件:

①枚举类型:

复制代码
复制代码
1     public enum enumColor
2     {
3         Red = 1,
4         Yellow,
5         Green,
6         Blue,
7         White,
8         Black
9     }
复制代码
复制代码

②以下状态都是理想状态,并未对错误数据进行处理。

 

1.枚举类型转换为字符串

复制代码
复制代码
        private string EnumConvertToString(enumColor color)
        {
            //方法一
            //return color.ToString();

            //方法二
            return Enum.GetName(color.GetType(), color);
        
复制代码
复制代码

 

2.枚举类型转换为数字

        private int EnumConvertToInt(enumColor color)
        {
            return (int)color;
        }

 

3.字符串转换为枚举类型

复制代码
复制代码
        private enumColor StringConvertToEnum(string str)
        {
            enumColor color = enumColor.Red;
            try
            {
                color = (enumColor)Enum.Parse(typeof(enumColor), str);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return color;
            }

            return color;
        }
复制代码
复制代码

 

4.数字转换为枚举类型

复制代码
复制代码
        private enumColor IntConvertToEnum(int i)
        {
            if (Enum.IsDefined(typeof(enumColor), i))
            {
                return (enumColor)Enum.ToObject(typeof(enumColor), i);
            }
            return enumColor.Red;
        }
复制代码
复制代码

        private enumColor IntConvertToEnumOther(int i)
        {
            return (enumColor)i;
        }

 

转自:https://www.cnblogs.com/wangyblzu/p/6543037.html

posted @   低调码农哥!  阅读(2932)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示