如何使一个字符串'23.89023482'在使用FloatToStr变为23.90?
有什么规则吗?是不是小数后第2位四舍五入?
FormatFloat('0.0', f) + '0'
用下面这个函数要好的多:
FloatToStrF('23.89023482',ffnumber,12,2)
试试吧,用了很久了,不知道格式对不对,要不对自己看看帮助吧。
我的做法
edit1.Text:=Formatfloat('.00',strtofloat(Formatfloat('.0',23.89023482)));
var
s: string
begin
//FormatFloat 的参数1是 String 格式指令, 参数2是实数类型 Extended
s := FormatFloat('###.###',12.3456);
//返回: 12.346
s := FormatFloat('000.000',12.3456);
//返回: 012.346
s := FormatFloat('#.###',12.3);
//返回: 12.3
s := FormatFloat('0.000',12.3);
//返回: 12.300
s := FormatFloat('#,#.#',1234567);
//返回: 1,234,567
s := FormatFloat('0,0.0',1234567);
//返回: 1,234,567.0
s := FormatFloat('0.00E+0',1234567);
//返回: 1.23E+6
s := FormatFloat('0.00E+00',1234567);
//返回: 1.23E+06
//在科学计数法中使用 # 好像不合适?
ShowMessage(s);
end ;