我需要生成一个字符串,它将在以后打印出来,并且不能有小数点。为此,我尝试使用Erlang中的io_lib:format模块,但我不确定什么是合适的格式来实现这一点。
例如,我可以使用以下精度最高为.1的函数,但不能使用.0
io_lib:format("~.2f", [789.1234]).
789.12
io_lib:format("~.1f", [789.1234]).
789.1
io_lib:format("~.0f", [789.1234]).
** exception error: bad argument
in function io_lib:format/2
called as io_lib:format("~.0f",[789.1234])
我所需要的一切都来自:
- 789.1234产生字符串**“789”**
- 123.0产生字符串**“123”**
我知道我可以做一个“重新”更换,但我试图找到一个格式优雅的方式。
3条答案
按热度按时间k0pti3hp1#
如果你在Erlang中截断一个浮点数,它将变成整数。下面是代码。
sxpgvts32#
erlang:float_to_list/2
64jmpszr3#
要转换为整数,可以执行以下操作:
如果你想保持它在字符串中的原样