2012-04-26 9 views
4

可能性の重複:
How can I get the primitive name of a type in C#?のC#、反射とプリミティブ型

I持つC#で、次のコード:

 Assembly sysAssembly = 0.GetType().Assembly; 
     Type[] sysTypes = sysAssembly.GetTypes(); 
     foreach (Type sysType in sysTypes) 
     { 
      if (sysType.IsPrimitive && sysType.IsPublic) 
       Console.WriteLine(sysType.Name); 
     } 

このコード出力:

ブール、バイト、CHAR、ダブル、Int16型、のInt32、Int64の、のIntPtr、SByte、 シングル、UInt16型、UInt32型、UInt64型、UIntPtr、

私はboolBooleanを交換したいと思い、Bytebyteによると、可能であれば、固定配列や辞書に依存することなく実行されます。これを行う方法はありますか?

答えて

6

これは

C# - Get user-friendly name of simple types through reflection?

に重複しているこれは、あまりにも

How can I get the primitive name of a type in C#?

答えはあなたができる、で、辞書なしで、スキートによって良い答えです。

Type t = typeof(bool); 

string typeName; 
using (var provider = new CSharpCodeProvider()) 
{ 
    var typeRef = new CodeTypeReference(t); 
    typeName = provider.GetTypeOutput(typeRef); 
} 

Console.WriteLine(typeName); // bool 
+0

これは魅力的でした。ありがとう。 –