ruby 保留一位小数问题
现在在做一个文件拷贝功能,需要在返回进度时,保留一个位小数点
如: 进度百分比 99.9783214
需要截取小数点后面的一位,返回99.9 不允许四舍五入 ,如果用 format 会进行四舍五入,返回100.0,
我查了ruby 相关的api ,没有类似可以这样处理的api,如果用正则表达式,可能效率太低了,因为在拷贝过程中, 拷贝文件大,并且数量多, 导致cpu占用很高,系统性能严重下降,系统有些程序都退出了
[解决办法]
不好意思,好像没有直接的方法可以用,StackOverflow 上类似问题 How to discard float precision in Ruby 有给出了下面的解决办法:
(199.9783214 * 10).to_i/10.0