Console.Write语法:格式字符串“{0,-25}”是什么意思
我正在编写C#代码
Console.Write("{0,-25}", company);
在上面的代码中,这个"{0,-25}"
是什么意思?
你提到它很难看到它的作用:那是因为它增加了空间,而且在控制台中很难看到。 尝试在输出之前和之后直接添加一个字符,这样您就可以更清楚地看到空格,如下例所示:
这个
Console.WriteLine("[{0, -25}]", "Microsoft"); // Left aligned Console.WriteLine("[{0, 25}]", "Microsoft"); // Right aligned Console.WriteLine("[{0, 5}]", "Microsoft"); // Ignored, Microsoft is longer than 5 chars
会导致这个(带空格)
[Microsoft ] [ Microsoft] [Microsoft]
在控制台窗口中看起来像这样:
阅读MSDN上的字符串格式,特别是复合格式 。 ‘-25;’ 指定对齐组件。
对齐组件可选对齐组件是一个有符号整数,表示首选的格式化字段宽度。 如果alignment的值小于格式化字符串的长度,则忽略alignment,并将格式化字符串的长度用作字段宽度。 如果对齐为正,则字段中的格式化数据右对齐;如果对齐为负,则对齐左对齐。 如果需要填充,则使用空格。 如果指定了对齐,则需要逗号。
那个“东西”是一个复合格式化字符串。 请参阅此处的评论和此处的文章。
它用于对齐。
检查这一点,以便你可以得到
Console.Write("Company = |{0,-25}|", company);
string company1="ABC Inc"; string company2="XYZ International Inc"; Console.Write("{0,-10}", company1);//o/p [ABC Inc...] Console.Write("{0,10}", company1);o/p [...ABC Inc] Console.Write("{0,-10}", company2);o/p [XYZ International Inc]
//在第一个Write()中,输出在输出字段宽度为10时左对齐
//在第二个Write()中,输出在输出字段宽度为10时右对齐
//在第三个Write()中,忽略输出宽度,因为company2名称的字符数超过10个。
- C#params明显的编译器bug(C#5.0)
- 有没有人想过以这种方式使用Blackboard Pattern?
- multithreadingexception和Dispose。 为什么Dispose没有打电话?
- 本地化和DataAnnotations。 GlobalResourceProxyGenerator和PublicResxFileCodeGenerator
- 文件扩展名后的空格 – >奇怪的FileInfo行为
- ReactiveUI(RxUI)与Reactive Extensions
- 如何使用Entity Framework包含已排序的导航属性
- WPF 4.0的DateTimePicker
- AT命令发送/接收SMS