C# ToString格式说明符
货币
"C"或"c"
//C
Console.WriteLine(666.ToString("C"));//¥666.00//C+数字 表示保留几位小数精度
Console.WriteLine(666.ToString("C1"));//¥666.0
Console.WriteLine(666.ToString("C3"));//¥666.000//指定区域货币
decimal amount = 1234.56m;// 美国 (USD)
Console.WriteLine(amount.ToString("C", new CultureInfo("en-US"))); // $1,234.56// 中国 (CNY)
Console.WriteLine(amount.ToString("C", new CultureInfo("zh-CN"))); // ¥1,234.56// 日本 (JPY)
Console.WriteLine(amount.ToString("C", new CultureInfo("ja-JP"))); // ¥1,235// 德国 (EUR)
Console.WriteLine(amount.ToString("C", new CultureInfo("de-DE"))); // 1.234,56 €// 英国 (GBP)
Console.WriteLine(amount.ToString("C", new CultureInfo("en-GB"))); // £1,234.56// 法国 (EUR)
Console.WriteLine(amount.ToString("C", new CultureInfo("fr-FR"))); // 1 234,56 €// 俄罗斯 (RUB)
Console.WriteLine(amount.ToString("C", new CultureInfo("ru-RU"))); // 1 234,56 ₽// 印度 (INR)
Console.WriteLine(amount.ToString("C", new CultureInfo("en-IN"))); // ₹1,234.56// 巴西 (BRL)
Console.WriteLine(amount.ToString("C", new CultureInfo("pt-BR"))); // R$ 1.234,56// 韩国 (KRW)
Console.WriteLine(amount.ToString("C0", new CultureInfo("ko-KR"))); // ₩1,235
百分比
"P"或"p"
//P
Console.WriteLine(3.141592.ToString("P"));//314.16 %//P+数字 表示保留几位小数精度
Console.WriteLine(3.141592.ToString("P1"));//314.2 %
Console.WriteLine(3.141592.ToString("P3"));//314.159 %
千位分隔符
"N"或"n"
//123,456,789,666.00
Console.WriteLine(123456789666.ToString("N"));
科学计数法
"E"或"e"
//1.200000e+005
Console.WriteLine(120000.ToString("e"));
//1.20e+005
Console.WriteLine(120000.ToString("e2"));
//1.200e+005
Console.WriteLine(120000.ToString("e3"));
自定义数字格式
格式模式 | 说明 | 示例代码 | 示例结果 |
---|---|---|---|
"0" | 零占位符 | 12.345.ToString("000.00") | 012.35 |
"#" | 数字占位符 | 12.345.ToString("###.##") | 12.35 |
"." | 小数点 | 12.3.ToString("00.00") | 12.30 |
"," | 千位分隔符 | 1234567.ToString("#,##0") | 1,234,567 |
"%" | 百分比 | 0.1234.ToString("0.00%") | 12.34% |
"0.0##" | 混合格式 | 12.3456.ToString("0.0##") | 12.346 |
"00000" | 固定位数 | 123.ToString("00000") | 00123 |
"##;(##)" | 负数括号 | -1234.ToString("##;(##)") | (1234) |
进制转换
int d = 10;
//十进制转二进制字符串
Console.WriteLine(Convert.ToString(d, 2));
//输出: 1010//十进制转十六进制字符串
Console.WriteLine(Convert.ToString(d, 16));
//输出: a//二进制字符串转十进制数
string bin = "1010";
Console.WriteLine(Convert.ToInt32(bin, 2));
//输出: 10//二进制字符串转十六进制数
Console.WriteLine(string.Format("{0:x}", Convert.ToInt32(bin, 2)));
//输出: a//十六进制转二进制字符串
Console.WriteLine(Convert.ToString(0xa, 2));
//输出: 1010//十六进制转十进制数
Console.WriteLine(Convert.ToString(0xa, 10));
//输出: 10
标准日期时间 DateTime类
格式符 | 名称 | 示例代码 | 示例结果 (en-US) |
"d" | 短日期 |
| 6/15/2023 |
"D" | 长日期 |
| Thursday, June 15, 2023 |
"f" | 完整日期/短时间 |
| Thursday, June 15, 2023 4:05 PM |
"F" | 完整日期/长时间 |
| Thursday, June 15, 2023 4:05:06 PM |
"g" | 常规日期/短时间 |
| 6/15/2023 4:05 PM |
"G" | 常规日期/长时间 |
| 6/15/2023 4:05:06 PM |
"M" | 月日模式 |
| June 15 |
"o" | 往返格式 |
| 2023-06-15T16:05:06.1234567Z |
"s" | 可排序格式 |
| 2023-06-15T16:05:06 |
"t" | 短时间 |
| 4:05 PM |
"T" | 长时间 |
| 4:05:06 PM |
"u" | 通用可排序 |
| 2023-06-15 16:05:06Z |
"Y" | 年月模式 |
| June 2023 |
自定义日期时间 DateTime类
格式模式 | 说明 | 示例代码 | 示例结果 |
---|---|---|---|
"yyyy-MM-dd" | 标准日期格式 | DateTime.Now.ToString("yyyy-MM-dd") | 2023-06-15 |
"dd/MM/yyyy" | 另一种日期格式 | DateTime.Now.ToString("dd/MM/yyyy") | 15/06/2023 |
"hh:mm tt" | 12小时制时间 | DateTime.Now.ToString("hh:mm tt") | 04:05 PM |
"HH:mm:ss" | 24小时制时间 | DateTime.Now.ToString("HH:mm:ss") | 16:05:06 |
"yyyy MMMM" | 年份和完整月份 | DateTime.Now.ToString("yyyy MMMM") | 2023 June |
"ddd, dd MMM yyyy" | 自定义格式 | DateTime.Now.ToString("ddd, dd MMM yyyy") | Thu, 15 Jun 2023 |
TimeSpan 格式
格式符 | 说明 | 示例代码 | 示例结果 |
---|---|---|---|
"c" | 常量格式 | TimeSpan.FromHours(1.5).ToString("c") | 01:30:00 |
"g" | 常规短格式 | TimeSpan.FromHours(25.5).ToString("g") | 1.5:30:00 |
"G" | 常规长格式 | TimeSpan.FromMilliseconds(123456789).ToString("G") | 1.10:17:36.7890000 |
Guid 格式
格式符 | 说明 | 示例代码 | 示例结果 |
---|---|---|---|
"N" | 32位数字 | Guid.NewGuid().ToString("N") | 1234567890abcdef1234567890abcdef |
"D" | 带连字符 | Guid.NewGuid().ToString("D") | 12345678-90ab-cdef-1234-567890abcdef |
"B" | 带花括号 | Guid.NewGuid().ToString("B") | {12345678-90ab-cdef-1234-567890abcdef} |
"P" | 带圆括号 | Guid.NewGuid().ToString("P") | (12345678-90ab-cdef-1234-567890abcdef) |