我需要打印双打,以便为字符串表示值分配确定数量的符号(如8)。下一个单词应该从每个字符串中字符串开头的相同索引处开始。现在我有:
value: 0 test
value: 0.3333333333333 test
value: 0.5 test
我需要:
value: 0 test
value: 0.33333333 test
value: 0.5 test
测试代码:
double[] ar = new double[] { 0, (double)1 / 3, (double)1 / 2 };
string s = "test";
foreach (var d in ar)
{
Console.WriteLine($"value: {d} {s}");
}
在{d:
之后我应该添加什么?
答案 0 :(得分:7)
您可以使用Alignment Component来实现此目的。像这样:
Console.WriteLine($"value: {d,-17} {s}");
可选对齐组件是一个有符号整数,表示首选的格式化字段宽度。如果alignment的值小于格式化字符串的长度,则忽略alignment,并将格式化字符串的长度用作字段宽度。如果对齐为正,则字段中的格式化数据右对齐,如果对齐为负,则对齐左对齐。如果需要填充,则使用空格。如果指定了对齐,则需要逗号。
因此,我们使用否定对齐,因为您希望第一列左对齐。