Delphi Format字元串說明

function Format(const Format: string; const Args: array of const): string;
 
  Format字元串說明︰
  "%" [index ":"] ["-"] [width] ["." prec] type
  (1) 格式化字元串必須以%開頭
  (2) [index ":"] 索引指的是Args參數清單中要顯示的每一項的序號。比如︰Args
                  ['a', 'c'],那麼'a'的索引就是0,而'c'的索引就是1,而且由於只有
                  兩項,所以就不會出現大於1的索引值。
                  Format('%2:s %1:s %0:s', ['1st', '2nd', '3rd']);
                  結果︰'3rd 2nd 1st'
  (3) ["-"] 這個標識符的作用是當要顯示的字符的個數少於[width]時,在右邊填補空格;
            如果沒加上["-"],則在左邊填補空格。
            Format('(%4s)', ['aa']); 結果︰'  aa'
  (4) [width] 寬度
              規定了要顯示的字符的個數。如果要顯示的寬度大於[width],則按實際的
              寬度來顯示;反之,則填補空格或按要求填補其它字符。
  (5) ["." prec] 精度
                 這是針對浮點數來說的,一般就是指小數點後的位數。
  (6) type 類型(見下面)
 
  type的可能值有下列這些︰
  (1) d 有符號十進製數
        Args必須是有符號整型數。如果在格式化字元串中還加入了["." prec],則如果Args
        的長度如果小於給出的精度數時,在前邊填補0;如果大於精度數,按實際長度顯示。
        Format('(%.3d)', [99]); 結果︰'(099)'
 
  (2) u 無符號十進製數
        Args必須是無符號整型數。其它特性與d一樣。
 
  (3) e 科學技術法
        用科學技術法顯示數據,形式大致如下︰'-d.ddd...E+ddd'
        Args必須是一個浮點數。如果是一個負數,則在最前面顯示一個符號;在小數點前面
        總是顯示一位數字;包括小數點前面的數字在內,數字的個數由["." prec]來確定,
        如果沒有指定["." prec],則預設為15位精度。如果實際的數字長度超出了指定的
        ["." prec],則剛剛超出的那一位數字四舍五入。指數符號E後面總是要跟著加號或
        減號,並且在後面至少跟著三位數字。
 
  (4) f 固定的
        Args必須為浮點數,轉換後的形式大致是'-ddd.ddd...'這樣的。
        如果要轉換的是負值,則前面有一個負號。轉換後的數字,在小數點後面的數字的個數
        ["." prec]決定。如果沒有指定["." prec],預設為2位精度。
 
  (5) g 一般的
        Args必須為浮點數。
        被轉換後的數字總是儘可能的簡短(有可能是fe形式的)。有重要意義的數字的長度
        ["." prec]來決定,預設為15(包括整數位和小數位)。數字前後的0都將被去掉,
        小數點也只有在必要的時候才顯示出來。如果小數點左邊的數字小於等於指定的精度,
        並且整個值大於或等於0.00001的時候,才使用f的顯示格式,否則使用e(科學技術法)
 
  (6) n Args必須是浮點數。形式和f是一樣的,不同的是會顯示千位符,如︰1,123,444
 
  (7) m 貨幣類型
        Args必須是浮點數。能夠顯示貨幣符號,可以透過“控制面板”來設定。小數點後
        的位數由["." prec]決定,如果沒用["." prec],則預設2位。
 
  (8) p 指標
        Args必須是一個指標值。
        將指標轉換為8個字符的十六進製字元串。
 
  (9) s 字元串
        Args必須是字符,字元串或PChar值。
        如果指定了["." prec],並且字元串的實際長度大於["." prec],則從左到右截取
        精度指定數量的字元串,其餘的刪除。
 
  (10) x 十六進製
         Args必須是一個整型數。
         如果使用了["." prec],不足部分要用0補齊。
 
  注意︰[index ":"] [width] ["." prec]可以使用這樣的格式︰
        Format('%*.*f', [8, 2, 123.456])
        等價於︰Format('%8.2f', [123.456]).
原文地址:https://www.cnblogs.com/brightsea/p/1983869.html