我有一个这样的变量:
string energyA14 = "0.17"; //kWh
然后我将其添加到如下属性中:
EnergyA14 = Convert.ToDecimal(energyA14)
但是当我把它打印出来时它只显示17我希望它显示0.17
如何显示整个十进制?
感谢您提前提供任何帮助。
答案 0 :(得分:4)
我想这是用过的文化的问题
因此,.
不会被解释为十进制分隔符,因此数字为17.000
。
尝试使用Convert.ToDecimal
的其他重叠并使用invariant culture:
EnergyA14 = Convert.ToDecimal(energyA14, CultureInfo.InvariantInfo)
decimal.TryParse(energyA14, NumberStyles.Float, CultureInfo.InvariantInfo, out EnergyA14)
答案 1 :(得分:2)
使用decimal.Parse
或decimal.TryParse
方法:
string energyA14 = "0.17"; //kWh
decimal EnergyA14;
if (decimal.TryParse(energyA14, NumberStyles.Any, CultureInfo.InvariantCulture, out EnergyA14))
{
// EnergyA14 is set here
}
答案 2 :(得分:0)
你可以准确地扩展你想看的东西吗?
当我尝试
时 string energyA14 = "0.17"; //kWh
decimal EnergyA14 = Convert.ToDecimal(energyA14);
我看到0.17。这是你想要看到的还是别的什么?
此外,这会有所帮助:http://msdn.microsoft.com/en-us/library/dwhawy9k(v=vs.110).aspx