我正在使用Delphi 2009,我把我的问题解决了,但我得到的答案已经过时了,因为它在Delphi2009中无法识别StrtoFloat.
我问如何将整数转换为'1900000'到'1,900,000'?
您也可以使用format命令.由于格式需要实数,因此将0.0添加到整数会有效地将其转换为扩展类型.
Result := Format('%.0m',[intValue + 0.0]));
Run Code Online (Sandbox Code Playgroud)
这会正确处理负数并为用户区域设置添加货币符号.如果不需要货币符号,则设置CurrencyString:=''; 在通话之前,然后恢复它.
SavedCurrency := CurrencyString;
try
CurrencyString := '';
Result := Format('%.0m',[intValue + 0.0]));
finally
CurrencyString := SavedCurrency;
end;
Run Code Online (Sandbox Code Playgroud)
要强制使用逗号,只需设置ThousandSeparator:=',';
CurrencyString := '!';
ThousandSeparator := '*';
Result := Format('%.0m',[-1900000.0]);
// Returns (!1*900*000) in my locale.
Run Code Online (Sandbox Code Playgroud)
掩码中的"句点"确定浮点的小数部分将如何显示.由于我之后传递了0,它告诉format命令不包含任何小数部分.格式('%.3m',[4.0])的格式命令将返回$ 4.000.