在开发过程中,很多时候需要进行数据类型转换,对于已知两种类型的转换,非常简单
.ToString() .Parse() 或 TryParse() ,甚至是强转都可以完成。
但有时候,需要转换的类型是不确定的,如果一个一个的用if或switch当然可以完成,但看起来却不舒服。
其实微软已经提供了类型的转换。
假设我们要转换的目标类型为 Type t.
首先获得T类型的转换器:System.ComponentModel.TypeConverter cvt = System.ComponentModel.TypeDescriptor.GetConverter(t);
然后就可以用这个转换器进行转换:var v = cvt.ConvertFromString(x.ToString());
得到的v就是我们转换的结果。