Heim > Backend-Entwicklung > C++ > Wie rendert man Tabellen in C#-Konsolenanwendungen effizient?

Wie rendert man Tabellen in C#-Konsolenanwendungen effizient?

DDD
Freigeben: 2025-01-04 17:46:40
Original
1035 Leute haben es durchsucht

How to Efficiently Render Tables in C# Console Applications?

So rendern Sie mühelos Tabellen in Konsolen-Apps mit C#

Ihr Wunsch, eine Tabelle mit sich schnell ändernden Daten in einer Konsolenanwendung anzuzeigen, ist ein häufige Herausforderung für Programmierer. Lassen Sie uns näher darauf eingehen, wie Sie dies in C# am effizientesten angehen können.

Formatieren von Spalten über String.Format

Um Konsistenz und Genauigkeit sicherzustellen, verwenden Sie die Methode String.Format mit Ausrichtungswerte. Mit Code wie diesem können Sie beispielsweise eine formatierte Zeile definieren:

String.Format("|{0,5}|{1,5}|{2,5}|{3,5}|", arg0, arg1, arg2, arg3);
Nach dem Login kopieren

In diesem Beispiel geben die Zahlen nach den Kommas die Breite jeder Spalte an. Die erste Spalte ist beispielsweise 5 Zeichen breit.

Optimierung für Geschwindigkeit und Spaltengröße

Um den Zeichenprozess zu optimieren, verwenden Sie die folgenden Techniken:

  • Verwenden Sie StringBuilder, um Zeichenfolgen effizient zu verketten.
  • Spaltenbreiten zwischenspeichern, um häufiges Auftreten zu vermeiden Berechnungen.
  • Erwägen Sie die Verwendung von Doppelpufferungstechniken, um das Flackern zu minimieren.

Beispielcode

Der folgende C#-Code zeigt, wie diese implementiert werden Prinzipien:

using System;
using System.Text;

class Program
{
  static void Main(string[] args)
  {
    // Initialize data
    // ...

    // Establish column widths
    int[] widths = new int[4] { 10, 15, 20, 25 };

    // Create row separator
    StringBuilder rowSeparator = new StringBuilder();
    for (int i = 0; i < widths.Length; i++)
    {
      rowSeparator.Append('-', widths[i] + 2);
    }

    // Continuously update and display table
    while (true)
    {
      // Clear console
      Console.Clear();

      // Display header
      Console.WriteLine(rowSeparator.ToString());
      Console.WriteLine("| Column 1 | Column 2 | Column 3 | Column 4 |");

      // Display data rows
      foreach (object[] row in data)
      {
        StringBuilder rowBuilder = new StringBuilder();
        for (int i = 0; i < row.Length; i++)
        {
          rowBuilder.AppendFormat("|{0,-" + widths[i] + "}", row[i]);
        }
        Console.WriteLine(rowBuilder.ToString());
      }

      Console.WriteLine(rowSeparator.ToString());
    }
  }
}
Nach dem Login kopieren

Dieser Code aktualisiert und zeigt die Tabelle dynamisch an und sorgt so für eine übersichtliche und reaktionsfähige Darstellung Darstellung Ihrer sich schnell ändernden Daten in der Konsole.

Das obige ist der detaillierte Inhalt vonWie rendert man Tabellen in C#-Konsolenanwendungen effizient?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage