.NET 幫助

C# 列印行(開發人員如何使用)

發佈 2024年4月3日
分享:

在 C# 打印行是控制台應用程序的基本方面,涉及在控制台螢幕上顯示文本或指定值。無論是使用標準輸出流還是格式化字符串,都需要瞭解如何 列印行 在C#控制台應用程式中高效打印至關重要。

在本文中,我們將探索與C#打印行相關的各種方法和技術。

列印行基本知識

在 C# 中,列印行通常使用 Console.WriteLine 方法。讓我們從一個簡單的例子開始:

using System;
class Program {
    public static void Main() {
        Console.WriteLine("Hello, C# Print Line!");
    }
}
using System;
class Program {
    public static void Main() {
        Console.WriteLine("Hello, C# Print Line!");
    }
}
Imports System
Friend Class Program
	Public Shared Sub Main()
		Console.WriteLine("Hello, C# Print Line!")
	End Sub
End Class
VB   C#

在上述程式碼中,Console.WriteLine 語句會輸出指定的字串值 (你好, C# 打印行!請提供您想要翻譯的內容。) 接著一行。這是通過 WriteLine 方法實現的,該方法在輸出結束時附加一個行終止符。

行結束符

行結束符是一個特殊字符或序列,用於指示行的結尾。最常見的兩個行結束符是回車符 ('\r') 和換行 ('\n')在 C# 中,Console.WriteLine 方法會根據作業系統的不同使用適當的當前行終止符。

public static void Main() {
    Console.WriteLine("This is on the first line.");
    Console.WriteLine("This is on the second line.");
}
public static void Main() {
    Console.WriteLine("This is on the first line.");
    Console.WriteLine("This is on the second line.");
}
Public Shared Sub Main()
	Console.WriteLine("This is on the first line.")
	Console.WriteLine("This is on the second line.")
End Sub
VB   C#

在上述範例中,程式執行後,每個 Console.WriteLine 都會在 C# 主控台視窗中產生一個新行,最終會顯示兩個指定的行。

C# 列印行(對開發者的運作方式):圖1 - 先前代碼的控制台輸出

指定換行符號

如果需要明確控制換行符號,可以使用 Console.Write 方法並手動新增所需的換行符號:

public static void Main() {
    Console.Write("This is on the first line.");
    Console.Write('\r'); // Carriage return
    Console.Write("This is on the same line but very far left position.");
}
public static void Main() {
    Console.Write("This is on the first line.");
    Console.Write('\r'); // Carriage return
    Console.Write("This is on the same line but very far left position.");
}
Imports Microsoft.VisualBasic

Public Shared Sub Main()
	Console.Write("This is on the first line.")
	Console.Write(ControlChars.Cr) ' Carriage return
	Console.Write("This is on the same line but very far left position.")
End Sub
VB   C#

在此範例中,回車符 ('\r') 用於將光標定位在行的開頭,導致文本的第二部分出現在最左側位置,即覆蓋先前的輸出。

C# 列印行(開發人員如何運作):圖 2 - 執行結果展示 \r

列印多行

要在不重複Console.WriteLine語句的情況下列印多行,您可以使用可變長度參數列表:

public static void Main() {
    PrintLines("Line 1", "Line 2", "Line 3");
}
static void PrintLines(params string [] lines) {
    foreach (var line in lines) {
        Console.WriteLine(line);
    }
}
public static void Main() {
    PrintLines("Line 1", "Line 2", "Line 3");
}
static void PrintLines(params string [] lines) {
    foreach (var line in lines) {
        Console.WriteLine(line);
    }
}
Public Shared Sub Main()
	PrintLines("Line 1", "Line 2", "Line 3")
End Sub
Shared Sub PrintLines(ParamArray ByVal lines() As String)
	For Each line In lines
		Console.WriteLine(line)
	Next line
End Sub
VB   C#

我們創建的PrintLines方法採用指定的字串參數數組,允許您傳遞任意數量的新行來打印指定的字串值:

C# 列印行(開發者如何使用):圖 3 - 使用 PrintLines 方法的控制台輸出

格式化輸出

格式化輸出至關重要,尤其是處理不同數據類型時。Console.WriteLine 方法提供了多種重載,接受指定物件和格式信息:

public static void Main() {
    int answer = 42;
    string name = "John Doe";
    Console.WriteLine("The answer is {0}.", answer);
    Console.WriteLine("Hello, {0}!", name);
}
public static void Main() {
    int answer = 42;
    string name = "John Doe";
    Console.WriteLine("The answer is {0}.", answer);
    Console.WriteLine("Hello, {0}!", name);
}
Public Shared Sub Main()
	Dim answer As Integer = 42
	Dim name As String = "John Doe"
	Console.WriteLine("The answer is {0}.", answer)
	Console.WriteLine("Hello, {0}!", name)
End Sub
VB   C#

在此範例中,{0} 是指定物件的佔位符 (在這種情況下,answername),允許您在輸出中包含變量數據並打印指定的格式信息。

C# 列印行 (開發人員如何操作):圖 4 - 顯示格式化的控制台輸出

行分隔和 Unicode 字元

對於特殊的行分隔或 Unicode 字元,你可以使用逃逸序列。你也可以使用 Console.WriteLine 輸出任何 ASCII 字面值或有效的 HTML 代碼。例如,要在相同的字串中包含一個行分隔:

public static void Main() {
    Console.WriteLine("This is line 1.\nThis is line 2.");
    Console.WriteLine("Line 1\u000Aline 2");
}
public static void Main() {
    Console.WriteLine("This is line 1.\nThis is line 2.");
    Console.WriteLine("Line 1\u000Aline 2");
}
Imports Microsoft.VisualBasic

Public Shared Sub Main()
	Console.WriteLine("This is line 1." & vbLf & "This is line 2.")
	Console.WriteLine("Line 1" & vbLf & "line 2")
End Sub
VB   C#

在這裡,\n\u000A,指定的 Unicode 字元,都代表換行字元,在每個案例中都會使文字移到下一行。

C# 列印行(開發者運作方式):圖 5 - 顯示換行字元的主控台輸出

隨機布林值

以下程式碼在 Console.WriteLine 方法中使用了字串插值。字串插值是 C# 6.0 引入的一項功能,它簡化了在字串文字中嵌入表達式或變數的過程,並在控制台應用程式中正確顯示指定的布林值。

Random rnd = new Random();
for (int i = 1; i <= 5; i++)
{ 
    bool isTrue = rnd.Next(0, 2) == 1;
    Console.WriteLine($"True or False: {isTrue}");
}
Random rnd = new Random();
for (int i = 1; i <= 5; i++)
{ 
    bool isTrue = rnd.Next(0, 2) == 1;
    Console.WriteLine($"True or False: {isTrue}");
}
Dim rnd As New Random()
For i As Integer = 1 To 5
	Dim isTrue As Boolean = rnd.Next(0, 2) = 1
	Console.WriteLine($"True or False: {isTrue}")
Next i
VB   C#

指定的數據從表達式返回並在控制台應用程式上顯示如下:

C# 列印行(開發人員的工作原理):圖6 - 使用字串插值顯示布林值的控制台輸出

列印不同的數字格式

在程式設計中,列印各種數字格式是常見需求,特別是處理雙精度浮點數和單精度浮點數時。同樣地,可以使用 Console.WriteLine 語句以精確且輕鬆地列印它們。

雙精度浮點數

double doubleValue = 0.123456789;
Console.WriteLine($"Double Precision: {doubleValue:F7}");
double doubleValue = 0.123456789;
Console.WriteLine($"Double Precision: {doubleValue:F7}");
Dim doubleValue As Double = 0.123456789
Console.WriteLine($"Double Precision: {doubleValue:F7}")
VB   C#

在此範例中,F7指定雙精度值應以小數點後7位數格式化。您可以調整'F'後的數字來控制精度。

現有字串

string existingString = "Hello, C#!";
Console.WriteLine($"Existing String: {existingString}");
string existingString = "Hello, C#!";
Console.WriteLine($"Existing String: {existingString}");
Dim existingString As String = "Hello, C#!"
Console.WriteLine($"Existing String: {existingString}")
VB   C#

列印現有的字符串很簡單。只需使用 Console.WriteLine,然後包括您想顯示的字符串。

單精度浮點數

float singleValue = 0.123456789f;
Console.WriteLine($"Single Precision: {singleValue:F7}");
float singleValue = 0.123456789f;
Console.WriteLine($"Single Precision: {singleValue:F7}");
Dim singleValue As Single = 0.123456789F
Console.WriteLine($"Single Precision: {singleValue:F7}")
VB   C#

類似於雙精度,F7 格式規範用於此處的單精度浮點數。您可以根據精度要求調整 'F' 後面的數字。

使用 IronPrint 在 C# 中解鎖強大的列印功能

列印文件是許多應用程式的一個基本方面,而在 C# 中充分發揮列印的潛能時,IronPrint 脫穎而出,成為一個多功能且功能豐富的庫。

IronPrint 介紹

IronPrint由Iron Software開發,是一個為.NET生態系統(包括C#)設計的先進打印庫。無論你正在開發桌面、移動或網絡應用程序,IronPrint都能無縫集成到你的C#項目中,提供一整套工具來處理多樣化的打印需求。

C# 列印行(它對開發人員的運作方式):圖 7 - IronPrint 網頁

IronPrint 的主要特點

1. 跨平台相容性:

IronPrint 支援各種作業系統,包括 Windows、macOS、Android 和 iOS。這種跨平台相容性確保您的列印解決方案可以在不同環境中使用。

2. .NET 版本支援:

與 .NET Framework 4.6.2 及以上版本、.NET Core 3.1+ 和最新的 .NET 版本相容,IronPrint 覆蓋了廣泛的 .NET 環境。

3. 專案類型支援:

IronPrint 迎合不同的專案類型,包括移動裝置。 (Xamarin & MAUI),桌面 (WPF & MAUI)及主控台 (應用程序及庫)此靈活性使其適用於各種應用程式架構。

4. 簡單安裝:

開始使用 IronPrint 非常容易。您可以通過使用 NuGet 套件管理器控制台並執行 Install-Package IronPrint 命令來快速安裝這個函式庫。

IronPrint 的基本使用

以下是一個簡單的範例,說明在 C# 主控台應用程式中使用 IronPrint 的簡單方法 列印 文件:

using IronPrint;
class Program
{
    static void Main()
    {
    Console.WriteLine("Printing Started...");
        // Silent printing of a document
        Printer.Print("document.pdf");
        // Or display a print dialog
        Printer.ShowPrintDialog("document.pdf");
    Console.WriteLine("Printing Completed...");
    }
}
using IronPrint;
class Program
{
    static void Main()
    {
    Console.WriteLine("Printing Started...");
        // Silent printing of a document
        Printer.Print("document.pdf");
        // Or display a print dialog
        Printer.ShowPrintDialog("document.pdf");
    Console.WriteLine("Printing Completed...");
    }
}
Imports IronPrint
Friend Class Program
	Shared Sub Main()
	Console.WriteLine("Printing Started...")
		' Silent printing of a document
		Printer.Print("document.pdf")
		' Or display a print dialog
		Printer.ShowPrintDialog("document.pdf")
	Console.WriteLine("Printing Completed...")
	End Sub
End Class
VB   C#

此處的輸出顯示使用PrintShowPrintDialog方法打印文件。如果未安裝實體打印機,則使用默認打印機打印。

C# 列印 Line(開發人員的工作原理):圖 8 - 列印開始彈出視窗和儲存列印輸出彈出視窗

高級列印功能

IronPrint 超越了基本的列印任務,提供了以下的高級功能:

  • 靜默列印:使用 Printer.PrintAsync 列印文件而不顯示對話框。
  • 自定義列印設定:細微調整列印參數以達到最佳效果。 列印設定 類別。
  • 非同步列印:異步執行列印操作以防止阻塞主執行緒。
  • 選擇印表機:該 GetPrinterNames 此方法允許您從可用的打印機中選擇,從而對打印過程進行更細緻的控制。

平台特定調整

IronPrint 允許您為不同平台量身定製您的打印解決方案。例如,當處理針對特定平台(如 Windows、Android、iOS 或 macOS)的 .NET Core 項目時,您可以相應地調整項目文件中的 TargetFrameworks 屬性。

有關 IronPrint 的更多詳細信息,請訪問此 文檔API 參考 頁面。

結論

在 C# 中列印行是控制台應用程式開發的基本技能。無論是顯示文字、格式化輸出還是控制行終止符,了解可用的各種技術將增強您創建有效且可讀的控制台程序的能力。探索 Console 類別提供的多種方法,實驗格式化選項,並利用 C# 的靈活性,以在應用程式中生成清晰且結構良好的控制台輸出。

IronPrint 成為 C# 開發人員尋求強大且靈活的列印功能的有力盟友。憑藉其跨平台支持、兼容各種 .NET 版本和先進的列印功能,IronPrint 簡化了在各種 C# 應用程式中實施列印解決方案的過程。無論您是在為桌面、移動設備還是網頁進行開發,IronPrint 都能提供您實現 C# 開發世界中列印需求所需的工具。

IronPrint 提供了 免費試用 商業用途。從下載該庫 這裡 試試看。

下一個 >
C# 印出變數(對開發者的運作方式)

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 9,531 查看許可證 >