将长数值转换为浮点数
本文关键字:浮点数 转换 | 更新日期: 2023-09-27 18:13:35
在我的类中,我有一个属性,fileSize类型为长
我不想更改为浮点/双精度,因为我使用数据库,现在我不能只编辑的数据类型
文件大小通常为kB(long的原因(。。但是,一旦我想在MB中显示它(也就是说,fileSize/1024(->,并且我得到了0,这是因为类型不是float/double。。
如何在不更改fileSize的DataType的情况下解决问题,从而获得b.E 0.54MB?
fileSize / 1024
执行整数除法,因为两个操作数都是整数。如果你想执行实数除法,你可以这样做(至少有一个操作数必须是实数(:
double result = fileSize / 1024.0;
或:
double result = fileSize / 1024d;
现在,结果将包含您想要在UI上打印的正确值。
只需进行
double sizeMiB = fileSize / 1024.0
或
string toDisplay = string.Format("Size is {0}MiB", fileSize/1024.0);
除以1024.0
,编译器将其转换为double
。
您可以进行
double a = fileSize / 1024d;
例如使用fileSize / 1024.0
或fileSize / 1024d
。两者都使得编译器将其视为基于double
的除法。