格式 {n, w},n是参赛索引,w是宽度值,w正直表示右对齐,负值表示左对齐。
int i = 940;
int j = 73;
string ret = string.Format(" {0, 4}\n+{1, 4}\n ----\n {2, 4}", i, j, i+j);
Console.WriteLine(ret);
输出:
940
+ 73
----
1013
字符串 | 说明 |
C | 本地货币时间 |
D | 十进制格式,把整数转换为以10为基准的数,如果给定一个精度说明符,就加上前导0 |
E | 科学计数法(指数)格式。精度说明符设置小数位数(默认为6)。格式字符串的大小写(e或E)确定指数符号的大小写 |
F | 固定点格式,精度说明符设置小树位数,可以为0 |
G | 普通格式,使用E或F格式取决于哪种格式比较简单 |
N | 数字格式,用逗号标识千分符。例如12564.44 |
P | 百分数格式 |
X | 十六进制格式,精度说明符用于加上前导0 |
除e/E外,格式字符串都不需要考虑大小写。
如果要使用格式字符串,应把它放在索引数和字段宽度标记的后面,并用一个冒号把它们分离开。例如,把decimal值格式转换为货币格式,并使用计算机上的地区设置,其精度为两位小数,则使用C2:
decimal m = 546.58m;
decimal n = 98.3m;
string str = string.Format(" {0, 9:C2}\n+{1, 9:C2}\n---- \n {2, 9:C2}", m, n, m+n);
Console.WriteLine(str);
输出:
decimal m = 546.58m;
decimal n = 98.3m;
string str = string.Format(" {0, 9:C2}\n+{1, 9:C2}\n---- \n {2, 9:C2}", m, n, m+n);
Console.WriteLine(str);