我遇到将至少5位小数的字符串转换为int的问题。 它看起来像这样
var amount = "113.000000000000";
,我正在寻找的结果是113
我已经尝试过一堆不同的皈依者而没有任何运气。
我现在有一个有效的解决方案,这是一个扩展的方法,也许它不是那么好的解决方案
var amount = "113.000000000000";
if (amount.Contains("."))
{
var index = amount.IndexOf('.');
return int.Parse(amount.Substring(0, index));
}
感谢输入
修改
我有这个建议,但正如我提到的那样是formatException
var t = availibleQuantity.InnerText;
var test = (int) float.Parse(t.ToString(CultureInfo.InvariantCulture));
答案 0 :(得分:0)
我会在NumberStyles
来电中使用int.Parse
枚号,如下所示:
var amount = "113.000000000000";
return int.Parse(amount, NumberStyles.Float);
请注意,您必须添加using System.Globalization;
,并且还有其他NumberStyles。
答案 1 :(得分:0)
另一种解决方案
int m = int.Parse(amount.Split('.')[0]);
答案 2 :(得分:0)
你试过了吗?
Convert.ToInt64(Math.Floor(Convert.ToDouble(量)));