gpt4 book ai didi

c# - 获取对象的名称而不获取其位类型

转载 作者:行者123 更新时间:2023-11-30 20:18:12 25 4
gpt4 key购买 nike

我需要获取一些对象的名称。名称不能包含它们的位 (16/32/64)。实际上我是这样做的 object.GetType().Name。当我将 int 用作对象 (int.GetType().Name) 时,它返回 int。但是当我使用 uint 时,它返回 uint32。我只想得到 uint。有比 String.Replace 更好的方法吗?

最佳答案

您可以使用编译器服务来这样做:

static string GetFriendlyTypeName<T>()
{
var csharpCodeProvider = new Microsoft.CSharp.CSharpCodeProvider();
var codeType = new System.CodeDom.CodeTypeReference(typeof(T));
return csharpCodeProvider.GetTypeOutput(codeType);
}

static void Main(string[] args)
{
Console.WriteLine(GetFriendlyTypeName<Int32>()); //int
Console.WriteLine(GetFriendlyTypeName<UInt32>()); //uint
}

关于c# - 获取对象的名称而不获取其位类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41910623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com