1、函數聲明
function FormatFloat(const Format: string; Value: Extended): string; overload;
參數說明:
Format:格式化字符樣式,
Value:需要格式化的數值為Extended類型
為什么是這個類型,因為它是所有浮點值中表示范圍最大的,如果傳入該方法的參數
比如Double或者其他,則可以保存不會超出范圍。
2、具體參數用法,關鍵是看Format參數的用法
2.1 0 這個指定相應的位數的指令。
2.1 Format='0' 將Value格式化為一個整數
2.2 Format='整數部分0.小數部分0'
2.2.1整數部分0的個數小數Value整數部分的數字位數,則以Value整數部分的值為准,如果大於Value整數部分的數字位數,則在Value整數前面加0填充
2.2.2小數部分0:表示保留多少位小數,如果小數不夠則在末尾已0填充
比如:FormatFloat('000.000',22.22);
輸出的就是022.220
注意一點,如果整數部分的0的個數小於Value參數中整數的位數,則沒有效果
如:FormatFloat('0.00',22.22);
輸出的是:22.22
但如果小數部分的0小於Value中小數的倍數,則會截去相應的小數和位數
如:FormatFloat('0.0',22.22);
輸出的是:22.2
3、添加逗號分割符
也可以在整數0中指定逗號,這個整數位數必須大於3個,才會有逗號出句
FormatFloat('0,000.0',2222.22);
輸出是:2,222.2
如果這樣FormatFloat('000,0.0',2222.22);
它的輸出還是:2,222.2
注意它的規律
4、#符號用法
# 和0的用法一樣,
4.1相同點:都是"###.###",分整數部分.小數部分
不同點
4.2 使用#號不管是整數部分還是小數部分,如果#的位數多余Value的整數部分或者小數部分的位數,則多余的無效
4.3 對於整數位數位0的,#和0是不一樣的,如果Value=0.10,0.00顯示為0.10,#.##則顯示為.10
5、科學計數法E 看幾個例子大概就明白了
FormatFloat('0.00E+00',2222.22);
輸出是 2.22E+03
FormatFloat('0000.00E+00',2222.22);
輸出是 2222.22E+00
FormatFloat('00.0E+0',2222.22);
22.2E+2
全靠E右邊的0來支配的。
