我有以下功能
public object Convert(object value)
{
string retVal = string.Empty;
int oneMillion = 1000000;
retVal = ((double)value / oneMillion).ToString("###,###,###.###");
return retVal;
}
Run Code Online (Sandbox Code Playgroud)
我正在调用
var result = Convert(107284403940);
Run Code Online (Sandbox Code Playgroud)
错误:"指定的演员表无效."
怎么修...
注意:〜对象值可以是double,decimal,float,integer(32和64)..任何东西
是否可以在运行时进行类型转换?
Kie*_*one 76
使用Convert.ToDouble(value)而不是(double)value.它需要object并支持您要求的所有类型!:)
此外,您的方法总是返回string上面的代码; 我建议让方法表明,并给它一个更明显的名字(public string FormatLargeNumber(object value))
如果您期望double, decimal, float, integer为什么不使用可容纳所有十进制的数字( 128 位对于您正在查看的大多数数字来说就足够了)。
而不是(double)value使用decimal.Parse(value.ToString())或Convert.ToDecimal(value)
| 归档时间: |
|
| 查看次数: |
187383 次 |
| 最近记录: |