C# String.Format大全
C# String.Format大全
方法 | 结果 | 说明 |
string.Format("{0:D3}",23) |
023 |
格式化十进制的数字 |
string.Format("{0:D2}",1223) |
1223 |
精度说明符指示结果字符串中所需的最少数字个数 |
12345.ToString("n"); |
//生成 12,345.00 |
千位分隔,两个小数 |
string.Format("{0:N}", 14200) |
14,200.00 |
默认为小数点后面两位 |
string.Format("{0:N3}", 14200.2458) |
14,200.246 |
自动四舍五入 |
12345.ToString("e"); |
//生成 1.234500e+004 |
科学计数法 |
12345.ToString("f4"); |
//生成 12345.0000 |
保留小数位 |
12345.ToString(“f”) |
? |
定点 |
12345.ToString("x"); |
//生成 3039 (16进制) |
HEX 大小写 |
常规”G”和”g” |
? | ? |
12345.ToString("G"); 12345.ToString("g"); |
? |
常规 |
? | ? | ? |
自定义数字格式 |
? | ? |
String.Format("{0:00.0000}",1500.42) |
1500.4200 |
零占位符 |
String.Format("{0:(#).##}",1500.42) |
(1500).42 |
数字占位符 |
String.Format("{0:0.0}",1500.42) |
1500.4 |
小数点 |
String.Format("{0:0,0}",1500.42) |
1,500 |
? |
String.Format("{0:0,.}",1500.42) |
2 |
? |
String.Format("{0:0%}",1500.42) |
150042% |
百分数 |
String.Format("{0:00e+0}",1500.42) |
15e+2 |
指数占位符 |
? | ? | ? |
货币 |
? | ? |
12345.ToString("C"); |
//生成 ¥12,345.00 |
货币符,千位分隔,两个小数 |
string.Format("{0:C}",0.2) |
¥0.20 |
英文操作系统结果:$0.20 |
string.Format("{0:C1}",23.15) |
¥23.2 |
(截取会自动四舍五入) |
string.Format("市场价:{0:C},优惠价{1:C}",23.15,19.82) |
? |
格式化多个Object实例 |
String.Format("{0:¥#,##0.00;(¥#,##0.00);零}", 98005.30) |
¥98,005.30 |
金额,千位分隔符,两个小数 |
String.Format("{0:¥#,##0.00;(¥#,##0.00);零}", -98005.30) |
(¥98,005.30) |
金额,千位分隔符,两个小数 |
String.Format("{0:¥#,##0.00;(¥#,##0.00);零}", 0) |
零 |
金额,千位分隔符,两个小数 |
? | ? | ? |
百分比 |
? | ? |
12345.ToString("p"); |
//生成 1,234,500.00% |
百分数,千位分隔,两个小数 |
string.Format("{0:P}", 0.24583) |
24.58% |
默认保留百分的两位小数 |
string.Format("{0:P1}", 0.24583) |
24.6% |
自动四舍五入 |
? | ? | ? |
往返过程 |
||
Double.ToString(“R”) Double.ToString(“r”) Single.ToString(“R”) Single.ToString(“r”) |
? |
往返过程,适用于Double和Single |
? | ? | ? |
零占位符和数字占位符 |
||
string.Format("{0:0000.00}", 12394.039) |
12394.04 |
? |
string.Format("{0:0000.00}", 194.039) |
0194.04 |
? |
string.Format("{0:###.##}", 12394.039) |
12394.04 |
? |
string.Format("{0:####.#}", 194.039) |
194 |
? |
? | ? | ? |
日期时间 |
? | ? |
string.Format("{0:d}",System.DateTime.Now) |
2009-3-20 |
月份位置不是03 |
string.Format("{0:D}",System.DateTime.Now) |
2009年3月20日 |
? |
string.Format("{0:f}",System.DateTime.Now) |
2009年3月20日 15:37 |
? |
string.Format("{0:F}",System.DateTime.Now) |
2009年3月20日 15:37:52 |
? |
string.Format("{0:g}",System.DateTime.Now) |
2009-3-20 15:38 |
? |
string.Format("{0:G}",System.DateTime.Now) |
2009-3-20 15:39:27 |
? |
string.Format("{0:m}",System.DateTime.Now) |
3月20日 |
? |
string.Format("{0:t}",System.DateTime.Now) |
15:41 |
? |
string.Format("{0:T}",System.DateTime.Now) |
15:41:50 |
? |
string.Format("{0:r}",System.DateTime.Now) |
Sun, 17 Jun 2012 10:12:56 GMT |
RFC1123 日期格式 |
string.Format("{0:s}",System.DateTime.Now) |
2012-06-17T10:15:12 |
排序日期字符串 |
string.Format("{0:Y}",System.DateTime.Now) |
2012年6月 |
? |
string.Format("{0:U}",System.DateTime.Now) |
2012年6月17日 2:19:51 |
通用排序, GMT时间 |
string.Format("{0:u}",System.DateTime.Now) |
2012-06-17 10:19:51Z |
通用排序,本地时间 |
? | ? | ? |
日期时间(自定义) |
? | ? |
{0:dd} |
10 |
Day |
{0:ddd} |
Tue |
Day name |
{0:dddd} |
Tuesday |
Full day name |
{0:fff} |
932 |
毫秒 |
{0:gg} |
A.D. |
Era |
{0:hh} |
10 |
2 digit hour |
{0:HH} |
22 |
2 digit hour, 24hr format |
{0:mm} |
38 |
Minute 00-59 |
{0:MM} |
12 |
Month 01-12 |
{0:MMM} |
Dec |
Month abbreviation |
{0:MMMM} |
December |
月的名字 |
{0:ss} |
46 |
秒数从00到59 |
{0:tt} |
PM |
AM或PM(上午或下午) |
{0:yy} |
02 |
年(两位数字) |
{0:yyyy} |
2002 |
年 |
{0:zz} |
-05 |
Timezone offset, 2 digits |
{0:zzz} |
-05:00 |
Full timezone offset |
{0:hh:mm:ss} |
10:43:20 |
Separator |
{0:dd/MM/yyyy} |
10/12/2002 |
Separator |
? | ? | ? |
字符串 |
? | ? |
String.Format("->{0,10}<-", "Hello"); |
-> Hello<- |
至少10字符,不够前面(正数)补空 |
String.Format("->{0,-10}<-", "Hello") |
->Hello <- |
至少10字符,不够后面(负数)补空 |
? | ? | ? |
电话号码自定义 |
? | ? |
String.Format("{0:(###) ###-####}", 18005551212) |
(1800) 555-1212 |
? |
String.Format("{0:(##)####-########}", 86075487870252) |
(86)0754-87870252 |
? |
String.Format("{0:(##)####-########}", 086075487870252) |
(86)0754-87870252 |
? |
? | ? | ? |
零占位符”0” |
? | ? |
int i=120; |
00,120.00 |
? |
? | ? | ? |
数字占位符”#” |
? | ? |
double d=12050.8520; |
12,050.85 |
? |
? | ? | ? |
? | ? | ? |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器