我正在尝试计算给定长整型值的百分比。 以下代码返回零。 如何在C#中计算百分比。
long value = (fsize / tsize) * (long)100;
这里的fsize和tsize是一些长整型值。
我正在尝试计算给定长整型值的百分比。 以下代码返回零。 如何在C#中计算百分比。
long value = (fsize / tsize) * (long)100;
这里的fsize和tsize是一些长整型值。
试试这个
var value = ((double)fsize / tsize) * 100;
var percentage = Convert.ToInt32(Math.Round(value, 0));
double value = ((double)fsize / (double)tsize) * 100.0;
fsize
是 int
类型,且 tsize
也是 int
类型,则除法结果也是 int
类型,并且结果为 0 是正确的答案。你需要将其转换为 double
类型才能得到正确的值。int percentage = (int)Math.Round(((double)current / (double)total) * 100);
fsize
和tsize
是整数,那么这是一个整数除法,其结果也是一个整型值。 - Tim Schmelter