c# - 如何使用 Console.WriteLine 对齐列中的文本?

标签 c# console tabs alignment vertical-alignment

我有一种列显示,但最后两列似乎没有正确对齐。这是我目前的代码:

Console.WriteLine("Customer name    " 
    + "sales          " 
    + "fee to be paid    " 
    + "70% value       " 
    + "30% value");
for (int DisplayPos = 0; DisplayPos < LineNum; DisplayPos = DisplayPos + 1)
{
    seventy_percent_value = ((fee_payable[DisplayPos] / 10.0) * 7);
    thirty_percent_value = ((fee_payable[DisplayPos] / 10.0) * 3);          
    Console.WriteLine(customer[DisplayPos] + "         " 
        + sales_figures[DisplayPos] + "               " 
        + fee_payable[DisplayPos] + "           " 
        + seventy_percent_value + "           " 
        + thirty_percent_value);
}

最佳答案

试试这个

Console.WriteLine("{0,10}{1,10}{2,10}{3,10}{4,10}",
  customer[DisplayPos],
  sales_figures[DisplayPos],
  fee_payable[DisplayPos], 
  seventy_percent_value,
  thirty_percent_value);

其中大括号内的第一个数字是索引,第二个是对齐方式。第二个数字的符号表示字符串应该左对齐还是右对齐。左对齐使用负数。

或者看看 http://msdn.microsoft.com/en-us/library/aa331875(v=vs.71).aspx

关于c# - 如何使用 Console.WriteLine 对齐列中的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4449021/

相关文章:

c# - C#调用类函数时出现NullReferenceException

多次打印 C++ 消息

javascript - 浏览器中的 RequireJS : how can I log a variable without modifying my code first?

java - 错误 incompatible types : android. app.FragmentManager cannot be converted to android.support.v4.app.FragmentManager

google-chrome-extension - Chrome 扩展程序 : Multiple tabs in popup window

c# - WPF 从任何绑定(bind)中取消绑定(bind)所有元素及其子元素

c# - 验证代表出生日期的 3 个文本字段

c# - CLR 引用到底是什么,它如何保存类型信息?

c++ - QML 打开 GUI 窗口和控制台

jquery - 如何更改事件选项卡中图标字体的颜色?