Try   HackMD

Standard numeric format strings

C# 中的標準數值格式字串(Standard Numeric Format Strings)是一組用來格式化數值輸出的預定義字串。這些格式字串可以簡單地控制數字在輸出時的表示形式,比如小數位數、千位分隔符、貨幣符號等。標準數值格式字串由一個格式字母(如 "C"、"D"、"E" 等)後跟一個可選的精度說明符組成。


常見的標準數值格式字串

  1. "C" 或 "c" - 貨幣格式(Currency):
    格式化數值為貨幣表示形式,會包括貨幣符號(如美元符號 $ 或其他區域性貨幣符號)。

    精度說明符控制小數位數的顯示(默認為 2)。

    ​​​​double amount = 1234.56;
    ​​​​string result = amount.ToString("C"); // $1,234.56
    
  2. "D" 或 "d" - 十進位格式(Decimal):
    格式化整數為十進制表示,不包含千位分隔符。只能用於整數型別。
    精度說明符指定最小位數,不足位數會補零。

    ​​​​int number = 42;
    ​​​​string result = number.ToString("D5"); // 00042
    
  3. "E" 或 "e" - 科學記數法格式(Exponential):

    ​​​​double number = 1234.5678;
    ​​​​string result = number.ToString("E2"); // 1.23E+003
    
  4. "F" 或 "f" - 定點格式(Fixed-point):
    格式化數值為定點表示法,精度說明符控制小數位數(默認為 2)。

    ​​​​double number = 1234.5678;
    ​​​​string result = number.ToString("F1"); // 1234.6
    
  5. "G" 或 "g" - 常規格式(General):
    自動選擇最適合的固定點或科學記數法格式顯示數值,精度說明符控制有效位數。

    ​​​​double number = 1234.5678;
    ​​​​string result = number.ToString("G"); // 1234.5678
    
  6. "N" 或 "n" - 數值格式(Number):
    格式化數值為帶有千位分隔符的數字形式,精度說明符控制小數位數(默認為 2)。

    ​​​​double number = 1234.5678;
    ​​​​string result = number.ToString("N"); // 1,234.57
    
  7. 等等

如何使用標準數值格式字串

在 C# 中,你可以使用標準數值格式字串來格式化數值輸出,通常用在 ToString() 方法中,或者使用複合格式字串(如 string.Format() 或插值字符串)。例如:

double price = 123.456;
Console.WriteLine(price.ToString("C"));   // 輸出: $123.46
Console.WriteLine(price.ToString("F2"));  // 輸出: 123.46
Console.WriteLine(price.ToString("P1"));  // 輸出: 12345.6%