c# – DateTime TypeConverter
发布时间:2020-12-16 01:31:25 所属栏目:百科 来源:网络整理
导读:我有以下代码将字符串转换为类型T.它适用于所有其他类型,但在T类型为DateTime时会出错. TypeConverter c = TypeDescriptor.GetConverter( typeof (T) ); return (T) c.ConvertTo( obj,typeof (T) ) 我传了一个字符串 obj = "09/09/2009" 它抛出一个错误{“’
我有以下代码将字符串转换为类型T.它适用于所有其他类型,但在T类型为DateTime时会出错.
TypeConverter c = TypeDescriptor.GetConverter( typeof (T) ); return (T) c.ConvertTo( obj,typeof (T) ) 我传了一个字符串 obj = "09/09/2009" 它抛出一个错误{“’DateTimeConverter’无法将’System.String’转换为’System.DateTime’.”} 解决方法
如果您知道要获取字符串,则可以使用TypeConverter.ConvertFromString.这适用于DateTimeConverter,虽然我不知道为什么ConvertTo没有.
例如,这有效: TypeConverter c = TypeDescriptor.GetConverter( typeof (DateTime) ); Console.WriteLine((DateTime) c.ConvertFromString("09/09/2009")); 或者,只需转换ConvertFrom也可以: TypeConverter c = TypeDescriptor.GetConverter( typeof (DateTime) ); Console.WriteLine((DateTime) c.ConvertFrom("09/09/2009")); 它将转换为DateTime,因为它是那种转换器. 你应该小心文化问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |