我有一个DisplayResults方法,当它被调用时,它将其内容输出到控制台。我很难让它顺利对齐。我使用了tab \ t来对齐它但它看起来更好。这是代码:
{{1}}
正如您所看到的,它并不排队。我希望中间的百分比值和右边的货币值,两者都是右对齐的。因此,理想情况下,文本将全部保持对齐,中间区域的百分比值右对齐,外部区域的货币值右侧对齐。我希望这是有道理的。任何人都可以告诉我如何最好地实现这一目标?谢谢。
答案 0 :(得分:4)
您可以使用带对齐的字符串格式来创建字符列。当输出控制台使用固定宽度字体时,这是可行的。
例如,您的第一行可以写为
Console.WriteLine("{0,-40}{1,-50}", "Employee Name:", empName);
这将写出“员工姓名”;在左侧对齐的40个字符的列中,用空格填充其余部分以达到40个字符的宽度。然后,具有50个字符宽度的新列将在列的左侧获得对齐的empname
值
具有所得税税率的行可以写为
Console.WriteLine("{0,-30}{1,10:F2}%{2,50:F2}",
"Income Tax:", INCOME_TAX_RATE, incomeTaxPayable);
这会将第一列减少到标签的30个字符,并添加一个10字符的列,该字符将填充右侧对齐的INCOME_TAX_RATE值。当然,这可以在其他行中重复
在MSDN文章Composite Formatting
中对此进行了详细解释