• <i id='l7nk0'><tr id='l7nk0'><dt id='l7nk0'><q id='l7nk0'><span id='l7nk0'><b id='l7nk0'><form id='l7nk0'><ins id='l7nk0'></ins><ul id='l7nk0'></ul><sub id='l7nk0'></sub></form><legend id='l7nk0'></legend><bdo id='l7nk0'><pre id='l7nk0'><center id='l7nk0'></center></pre></bdo></b><th id='l7nk0'></th></span></q></dt></tr></i><div id='l7nk0'><tfoot id='l7nk0'></tfoot><dl id='l7nk0'><fieldset id='l7nk0'></fieldset></dl></div>

    <small id='l7nk0'></small><noframes id='l7nk0'>

      <legend id='l7nk0'><style id='l7nk0'><dir id='l7nk0'><q id='l7nk0'></q></dir></style></legend>

      • <bdo id='l7nk0'></bdo><ul id='l7nk0'></ul>

      1. <tfoot id='l7nk0'></tfoot>

        操作方法:在控制台应用程序中绘制表格的最佳方

        时间:2023-08-26

        <small id='4IV9g'></small><noframes id='4IV9g'>

        • <legend id='4IV9g'><style id='4IV9g'><dir id='4IV9g'><q id='4IV9g'></q></dir></style></legend>
            <tbody id='4IV9g'></tbody>
            <tfoot id='4IV9g'></tfoot>

              <i id='4IV9g'><tr id='4IV9g'><dt id='4IV9g'><q id='4IV9g'><span id='4IV9g'><b id='4IV9g'><form id='4IV9g'><ins id='4IV9g'></ins><ul id='4IV9g'></ul><sub id='4IV9g'></sub></form><legend id='4IV9g'></legend><bdo id='4IV9g'><pre id='4IV9g'><center id='4IV9g'></center></pre></bdo></b><th id='4IV9g'></th></span></q></dt></tr></i><div id='4IV9g'><tfoot id='4IV9g'></tfoot><dl id='4IV9g'><fieldset id='4IV9g'></fieldset></dl></div>
              • <bdo id='4IV9g'></bdo><ul id='4IV9g'></ul>
                1. 本文介绍了操作方法:在控制台应用程序中绘制表格的最佳方法 (C#)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我有一个有趣的问题.想象一下,我有很多数据以非常快的间隔发生变化.我想在控制台应用程序中将该数据显示为表格.f.ex:

                  I have an interesting question. Imagine I have a lot of data changing in very fast intervals. I want to display that data as a table in console app. f.ex:

                  -------------------------------------------------------------------------
                  |    Column 1     |    Column 2     |    Column 3     |    Column 4     |
                  -------------------------------------------------------------------------
                  |                 |                 |                 |                 |
                  |                 |                 |                 |                 |
                  |                 |                 |                 |                 |
                  -------------------------------------------------------------------------
                  

                  如何保持快速以及如何固定列宽?我知道如何在 java 中做到这一点,但我不知道它是如何在 C# 中完成的.

                  How to keep things fast and how to fix column widths ? I know how to do that in java, but I don't how it's done in 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);
                      }
                  }
                  

                  这篇关于操作方法:在控制台应用程序中绘制表格的最佳方法 (C#)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:Console.Read() 和 Console.ReadLine() 之间的区别? 下一篇:从控制台 C# 上的位置读取

                  相关文章

                  最新文章

                2. <i id='TISFv'><tr id='TISFv'><dt id='TISFv'><q id='TISFv'><span id='TISFv'><b id='TISFv'><form id='TISFv'><ins id='TISFv'></ins><ul id='TISFv'></ul><sub id='TISFv'></sub></form><legend id='TISFv'></legend><bdo id='TISFv'><pre id='TISFv'><center id='TISFv'></center></pre></bdo></b><th id='TISFv'></th></span></q></dt></tr></i><div id='TISFv'><tfoot id='TISFv'></tfoot><dl id='TISFv'><fieldset id='TISFv'></fieldset></dl></div>
                    <bdo id='TISFv'></bdo><ul id='TISFv'></ul>
                  1. <legend id='TISFv'><style id='TISFv'><dir id='TISFv'><q id='TISFv'></q></dir></style></legend>

                    <small id='TISFv'></small><noframes id='TISFv'>

                    <tfoot id='TISFv'></tfoot>