我有一个有趣的问题。想象一下,我有很多数据以非常快的时间间隔进行更改。我想将该数据显示为控制台应用程序中的表格。外汇:
------------------------------------------------------------------------- | Column 1 | Column 2 | Column 3 | Column 4 | ------------------------------------------------------------------------- | | | | | | | | | | | | | | | -------------------------------------------------------------------------
如何保持快速运行以及如何固定列宽?我知道如何在Java中执行此操作,但我不知道如何在C#中执行此操作。
您可以执行以下操作:
static int tableWidth = 73; static void Main(string[] args) { Console.Clear(); PrintLine(); PrintRow("Column 1", "Column 2", "Column 3", "Column 4"); PrintLine(); PrintRow("", "", "", ""); PrintRow("", "", "", ""); PrintLine(); Console.ReadLine(); } static void PrintLine() { Console.WriteLine(new string('-', tableWidth)); } static void PrintRow(params string[] columns) { int width = (tableWidth - columns.Length) / columns.Length; string row = "|"; foreach (string column in columns) { row += AlignCentre(column, width) + "|"; } Console.WriteLine(row); } static string AlignCentre(string text, int width) { text = text.Length > width ? text.Substring(0, width - 3) + "..." : text; if (string.IsNullOrEmpty(text)) { return new string(' ', width); } else { return text.PadRight(width - (width - text.Length) / 2).PadLeft(width); } }