将小数点后 5+ 位的字符串转换为 int

本文关键字:字符串 转换 int 小数点 | 更新日期: 2023-09-27 18:36:39

我在将至少具有 5+ 位小数的字符串转换为整数时遇到问题。它可以看起来像这样

var amount = "113.000000000000";,我正在寻找的结果是113

我尝试了一堆不同的皈依者,但没有任何运气。

我现在确实有一个有效的解决方案,它是一种扩展方法,也许它不是那么好的解决方案

var amount = "113.000000000000";                
if (amount.Contains("."))
{
    var index = amount.IndexOf('.');
    return int.Parse(amount.Substring(0, index));
}

感谢您的输入

编辑
我有这个建议,但正如我提到的,它是格式异常

var t = availibleQuantity.InnerText;
var test = (int) float.Parse(t.ToString(CultureInfo.InvariantCulture));

将小数点后 5+ 位的字符串转换为 int

另一种解决方案

int m = int.Parse(amount.Split('.')[0]);

我会在你的int.Parse调用中使用NumberStyles Enum,如下所示:

var amount = "113.000000000000";
return int.Parse(amount, NumberStyles.Float);

请注意,您必须添加using System.Globalization;并且还有其他数字样式。

你试过吗:

Convert.ToInt64(Math.Floor(Convert.ToDouble(amount)));