小工具搬运工

搬运一些实用的小工具

转载:https://zhuanlan.zhihu.com/p/361468308

在控制台应用程序的Console.Write 方法,和Console.Writeline 方法的参数中,可以直接定义数据转换为字符串后的输出格式。常用形式为:

Console.Write( "格式化表示",参数序列 );

或者

Console.WriteLine( "格式化表示",参数序列 ) ;

格式化表示的一般形式:

{N[, M] [: 格式码]}

看下面这个例子,体会一下格式化的一般形式:

int x = 10, y = 20, z = 30;
Console.WriteLine("{0} + {1} + {2} = {3}", x, y, z, x+y+z);
Console.WriteLine("{3} = {1} + {2} + {0}", x, y, z, x+y+z);

N:指定参数序列中的输出序号。例如 {0}表示x, {1}表示y, {2}表示z。
M:指定参数输出的最小长度,如果参数长度小于M,就用空格填充;如果大于等于M,则按实际长度输出;如果M为负,则左对齐;如果M为正,则右对齐;如果未指定M,则默认为0。 {1,5}表示将参数y的值转换为字符串后按5位右对齐输出。
格式码:为可选的格式化代码字符串。 例如{1:00000}的输出结果为00020,含义是将参数y按五位数字输出,不够5位左边补0,超过5位按实际位数输出。

常用格式码

格式符含义示例输出结果
C将数字按照金额形式输出Console.WriteLine("{0:C}",10);
Console.WriteLine("{0:C}",10.5);
¥ 10.00
¥ 10.50
D或d输出十进制整数。D后的数字表示输出位数,不够指定的位数时,左边补0Console.WriteLine("{0:D}",10);
Console.WriteLine("{0:D5}",10);
10
00010
F或f小数点后固定位数(四舍五入),F后面不指定位数时,默认为两位Console.WriteLine("{0:F}",10);
Console.WriteLine("{0:F4}",10.56736);Console.WriteLine("{0:F2}",12345.6789);Console.WriteLine("{0:F3}",123.45);
10.00
10.567412345.68123.450
N或n整数部分每3位用逗号分隔;小数点后固定位数(四舍五入),N后面不指定位数时,默认为两位Console.WriteLine("{0:n4}",12345.6789);12,345.6789
P或p以百分比形式输出,整数部分每三位用逗号分隔;小数点后固定位数(四舍五入),P后面不指定位数时,默认为两位Console.WriteLine("{0:p}",0.126);12.60%
X或x按十六进制格式输出。X后的数字表示输出位数,不够指定的位数时,前面补0Console.WriteLine("{0:X}",10);
Console.WriteLine("{0:X4}",10);
A
000A
00 占位符,如果数字位数不够指定的占位符位数,则左边补 0 ;如果数字位数超过指定的占位符位数,则按照实际位数原样输出。如果小数部分的位数超出指定的占位符位数,则多余的部分四舍五入Console.WriteLine("{0:00000}",123);
Console.WriteLine("{0:000}",12345);Console.WriteLine("{0:0000}"123.64);Console.WriteLine("{0:00.00}",123.6484);
00123
123450124123.65
## 占位符。对整数部分,去掉数字左边的无效 0 ;对小数部分,按照四舍五入原则处理后,再去掉右边的无效 0 。如果这个数就是 0 ,而又不想让它显示的时候,# 占位符很有用Console.WriteLine("{0:####}",123);
Console.WriteLine("{0:####}",123.64);Console.WriteLine("{0:####.###}",123.64);Console.WriteLine("{0:####.##}",0);Console.WriteLine("{0:####.##}",123.648);
123
124123.64123.65

扫描二维码,在手机上阅读!

添加新评论 »

在这里输入你的评论...

© 2025 小工具搬运工. . 京ICP备17053127号