# 请教各位园友，我想把以下三个简单的方法合并为一个，求支招！

0

```　　　　 private float StringToFloat(string value)
{
float fCompare = 0;
float.TryParse(value.Trim(), out fCompare);
return fCompare;
}

private decimal StringToDecimal(string value)
{
decimal dCompare = 0;
decimal.TryParse(value.Trim(), out dCompare);
return dCompare;
}

private int StringToInt32(string value)
{
int iCompare = 0;
int.TryParse(value.Trim(), out iCompare);
return iCompare;
}```

1

```private T StringTo<T>(string input,Func<string,T> function)
{
if(string.IsNullOrWhiteSpace(input))return default(T);
try
{
return function(input.Trim());
}
catch
{
return default(T);
}
}```

`    decimal dvalue=StringTo<decimal>("0.9",decimal.Parse);`

（int）：

`    int ivalue=StringTo("12",int.Parse);`

（float）：

`    var fvalue=StringTo("8.1",float.Parse);`

```public struct Birthday
{
public int Year{get;set;}
public int Month{get;set;}
public int Day{get;set;}
}```

```    var birthday=StringTo<Birthday>("19881112",input=>new Birthday
{
Year=StringTo(input.Substring(0,4),int.Parse),
Month=StringTo(input.Substring(4,2),int.Parse),
Day=StringTo(input.Substring(6,2),int.Parse),
});```

@Code Monk:这种写法的确很不错！

0

mark

ms_water | 园豆：510 (小虾三级) | 2012-10-30 08:41
2

0

jason2013 | 园豆：1998 (小虾三级) | 2012-10-30 08:59
0

if语句，case语句

chenping2008 | 园豆：9836 (大侠五级) | 2012-10-30 10:15
0

undefined | 园豆：898 (小虾三级) | 2012-10-30 19:08

您需要登录以后才能回答，未注册用户请先注册