格式('%7.8f',[varFloat])仅格式化小数。
例如,13,98变为13,98000000。 我必须使用的是: 00000013,98000000
我知道这是一个枯燥的问题,但我的时间不够,我找不到为什么不能按照我的意愿工作。
答案 0 :(得分:1)
如果您准备进入系统C运行时,可以使用sprintf
。例如:
{$APPTYPE CONSOLE}
function sprintf(buf: Pointer; format: PAnsiChar): Integer; cdecl;
varargs; external 'msvcrt.dll';
var
buf: array [0..255] of AnsiChar;
val: Double;
begin
val := 13.98;
sprintf(@buf, '%015.8f', val);
Writeln(buf);
Readln;
end.
输出:
000013.98000000
您可能会考虑选择一种可以防止缓冲区溢出的变体。
但FormatFloat
会更容易。