.NET 中的数字格式化

每次用到数字格式化的时候,总是想不起来,还要上网搜索,在此记录,以备查询。

摘抄自 Standard numeric format strings | Microsoft Docs

格式指定符名称描述示例
"C" 或 "c"Currency

结果:货币数值

支持:所有数值类型

精度指定:小数数字的位数

默认精度指定:定义在 NumberFormatInfo.CurrencyDecimalDigits

更多信息: The Currency ("C") Format Specifier

123.456("C", en-US) -> $123.46

123.456("C", fr-FR) -> 123.46€

123.456("C", ja-JP) -> ¥123

-123.456("C3", en-US) -> ($123.456)

-123.456("C3", fr-FR) -> -123.456€

-123.456("C3", ja-JP) -> -¥123.456

"D" 或 "d"

Decimal

结果:带有可选负号的整形数字

支持:仅支持整数

精度指定:最小为数字的位数

默认精度指定:最小为数字的位数

更多信息: The Decimal("D") Format Specifier

1234("D") -> 1234

-1234("D6") -> -001234

"E" 或 "e"Exponential (scientific)

结果:指数表示法

支持:所有数值类型

精度指定:十进制位数

默认精度指定:6

更多信息: The Exponential ("E") Format Specifier

1052.0329112756 ("E", en-US)
-> 1.052033E+003

1052.0329112756 ("e", fr-FR)
-> 1,052033e+003

-1052.0329112756 ("e2", en-US)
-> -1.05e+003

-1052.0329112756 ("E2", fr-FR)
-> -1,05E+003

"F" 或 "f" Fixed-point

结果:带有可选负号的整数和小数

支持:所有数值类型

精度指定:小数位数

默认精度指定:NumberFormatInfo.NumberDecimalDigits

更多信息:The Fixed-Point ("F") Format Specifier

 

1234.567("F", en-US) -> 1234.57

1234.567("F", de-DE) -> 1234,57

1234("F1", en-US) -> 1234.0

1234("F1", de-DE) -> 1234,0

-1234.56("F4", en-US) -> -1234.5600

-1234.56("F4", de-DE) -> -1234,5600

"G" 或 "g" General结果:更紧凑的定点或科学计数法

支持:所有数值类型

精度指定:有效位数

默认精度指定:依赖于数值类型

更多信息:The General ("G") Format Specifier

-123.456("G", en-US) -> -123.456

-123.456("G", sv-SE) -> -123,456

123.4546("G4", en-US) -> 123.5

123.4546("G4", sv-SE) -> 123,5

-1.234567890e-25 ("G", en-US) -> -1.23456789E-25

-1.234567890e-25 ("G", sv-SE)
-> -1,23456789E-25

"N" 或 "n"Number 结果:整数和小数位、组分隔符以及带可选负号的小数点分隔符

支持:所有数值类型

精度指定:有效位数

默认精度指定:NumberFormatInfo.NumberDecimalDigits

更多信息:The Numeric ("N") Format Specifier

1234.567 ("N", en-US)
-> 1,234.57
1234.567 ("N", ru-RU)
-> 1 234,57
1234 ("N1", en-US)
-> 1,234.0
1234 ("N1", ru-RU)
-> 1 234,0
-1234.56 ("N3", en-US)
-> -1,234.560
-1234.56 ("N3", ru-RU)
-> -1 234,560 
   "P" 或 "p"Percent结果:数字乘以 100 并以符号百分比显示

支持:所有数值类型

精度指定:所需小数位数

默认精度指定:NumberFormatInfo.PercentDecimalDigits

更多信息:The Percent ("P") Format Specifier

 
1 ("P", en-US)
-> 100.00 %
1 ("P", fr-FR)
-> 100,00 %
-0.39678 ("P1", en-US)
-> -39.7 %
-0.39678 ("P1", fr-FR)
-> -39,7 % 
"R" 或 "r" Round-trip 结果:可以互相转换为相同字符串

支持:SingleDouble, and BigInteger

注意:仅仅推荐 BigInteger 类型使用. 对于 Double 类型, 使用 "G17"; 对于 Single 类型, 使用 "G9"

精度指定:所需小数位数

默认精度指定:忽略

更多信息:The Round-trip ("R") Format Specifier

123456789.12345678 ("R")
-> 123456789.12345678
-1234567890.12345678 ("R")
-> -1234567890.1234567 
"X" 或 "x" Hexadecimal结果:16 进制字符串

支持:仅仅整数类型

精度指定:结果字符串中的数字位数

更多信息:The HexaDecimal ("X") Format Specifier

 
255 ("X")
-> FF
-1 ("x")
-> ff
255 ("x4")
-> 00ff
-1 ("X4")
-> 00FF 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值