C# winform 字符串通过枚举类型转成int类型的数据

方法1:使用Enum.ParseConvert.ToInt32

复制代码
using System;

public enum MyEnum
{
    Value1,
    Value2,
    Value3
}

class Program
{
    static void Main()
    {
        string enumName = "Value2"; // 假设这是你要转换的字符串
        MyEnum myEnumValue = (MyEnum)Enum.Parse(typeof(MyEnum), enumName); // 将字符串转换为枚举
        int enumIntValue = Convert.ToInt32(myEnumValue); // 将枚举转换为整数
        Console.WriteLine(enumIntValue); // 输出整数
    }
}

方法2:直接将Enum.Parse的结果转换为int

复制代码
using System;

public enum MyEnum
{
    Value1,
    Value2,
    Value3
}

class Program
{
    static void Main()
    {
        string enumName = "Value2"; // 假设这是你要转换的字符串
        int enumIntValue = (int)Enum.Parse(typeof(MyEnum), enumName); // 直接将字符串转换为枚举,然后转换为整数
        Console.WriteLine(enumIntValue); // 输出整数
    }
}

在这两个例子中,我们都是通过字符串enumName来获取枚举的整数值。第一个例子中,我们首先将字符串转换为枚举类型,然后再转换为整数。第二个例子中,我们直接将Enum.Parse的结果转换为整数,这是一个更直接的方法。

请注意,如果字符串不是枚举的有效名称,Enum.Parse方法将抛出一个ArgumentException异常。因此,在实际应用中,你可能需要添加异常处理来确保程序的健壮性。例如:

复制代码
try
{
    int enumIntValue = (int)Enum.Parse(typeof(MyEnum), enumName);
    Console.WriteLine(enumIntValue);
}
catch (ArgumentException ex)
{
    Console.WriteLine("错误:" + ex.Message);
}

这样,如果enumName不是MyEnum枚举的有效成员,程序将捕获异常并输出错误信息,而不是崩溃。

相关推荐
前端郭德纲3 分钟前
JavaScript 原型相关属性详解
开发语言·javascript·原型模式
于先生吖7 分钟前
基于 SpringBoot 架构,高性能 JAVA 动漫短剧系统源码
java·开发语言·spring boot
无限进步_13 分钟前
【C++&string】寻找字符串中第一个唯一字符:两种经典解法详解
开发语言·c++·git·算法·github·哈希算法·visual studio
SunnyDays101134 分钟前
如何使用 C# 创建、修改和删除 Excel 中的 VBA 宏(无需Microsoft Excel)
c#·excel·vba宏·创建vba宏·修改vba宏·删除vba宏
jwn99940 分钟前
Laravel11.x新特性全解析
android·开发语言·php·laravel
feifeigo12342 分钟前
航天器交会的分布式模型预测控制(DMPC)MATLAB实现
开发语言·分布式·matlab
于先生吖42 分钟前
支持二开与商用,JAVA 漫剧付费观看系统完整源码
java·开发语言
环黄金线HHJX.43 分钟前
【从0到1】
开发语言·人工智能·算法·交互
曹牧44 分钟前
Java: 从oracle表中获取一组kv序列
java·开发语言·oracle
深邃-1 小时前
【C语言】-数据在内存中的存储(1)
c语言·开发语言·数据结构·c++·算法