.NET 幫助

精通 C# 打印功能:開發人員指南

發佈 2024年4月3日
分享:

在 C# 中打印是開發人員的一項基礎技能,使他們能夠與用戶溝通並記錄關鍵信息。 Console 類別是一個多功能工具,提供了一系列的方法以滿足不同的情境。 Microsoft C# 編程語言還提供了一個列印方法可用於列印到紙張。

在這篇綜合文章中,我們將探討 C# 列印的各個方面,包括基本技術、變量列印、列表列印、高級功能以及對 IronPrint 庫的深入研究。

使用 Console.WriteLine 的基本列印

在 C# 列印的核心是 Console.WriteLine 方法。 這是用於在控制台上顯示格式化輸出信息的首選函數。 此方法的簡單性在以下示例中顯而易見:

Console.WriteLine("Hello, C# Print Function!"); // string line
Console.WriteLine("Hello, C# Print Function!"); // string line
Console.WriteLine("Hello, C# Print Function!") ' string line
VB   C#

此單行將指定的字符串行打印到控制台,隨後是換行符,整齊地呈現輸出。

列印變數

列印變數值是一個常見的需求。 C# 可以透過字串插值或串接來實現這一點。 這是變數列印的示例:

int age = 25;
Console.WriteLine($"Age: {age}");
int age = 25;
Console.WriteLine($"Age: {age}");
Dim age As Integer = 25
Console.WriteLine($"Age: {age}")
VB   C#

在此情況下,age 變數的值被插入到字串中,提供了一個動態且信息豐富的輸出。

C#列印功能(開發人員如何使用):圖1 - 同行變數輸出

列印使用者輸入內容

一個常見情境是將使用者輸入列印到控制台。 請考慮以下示例:

Console.Write("Enter your name: ");
string name = Console.ReadLine();
Console.WriteLine($"Hello, {name}!");
Console.Write("Enter your name: ");
string name = Console.ReadLine();
Console.WriteLine($"Hello, {name}!");
Console.Write("Enter your name: ")
Dim name As String = Console.ReadLine()
Console.WriteLine($"Hello, {name}!")
VB   C#

在這種情況下,程式會提示使用者輸入,捕捉輸入後,WriteLine 方法會打印出個性化的問候訊息。

列印清單

清單在C#編程語言中非常普遍,列印其元素是一項有用的技能。 以下代碼演示如何將列表中的每個元素打印在新行上:

List<string> fruits = new List<string> { "Apple", "Banana", "Orange" };
foreach (var fruit in fruits)
{
    Console.WriteLine(fruit);
}
List<string> fruits = new List<string> { "Apple", "Banana", "Orange" };
foreach (var fruit in fruits)
{
    Console.WriteLine(fruit);
}
Dim fruits As New List(Of String) From {"Apple", "Banana", "Orange"}
For Each fruit In fruits
	Console.WriteLine(fruit)
Next fruit
VB   C#

這個循環迭代列表,並將每個水果分別列印在不同的行上。

列印 Enum 值

枚舉通常用來表示一組具名常數。 列印列舉值有助於在程式碼中視覺化並確認其使用情況:

enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }
Days today = Days.Wednesday;
Console.WriteLine($"Today is {today}");
enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }
Days today = Days.Wednesday;
Console.WriteLine($"Today is {today}");
Friend Enum Days
	Sunday
	Monday
	Tuesday
	Wednesday
	Thursday
	Friday
	Saturday
End Enum
Private today As Days = Days.Wednesday
Console.WriteLine($"Today is {today}")
VB   C#

這提供了對由枚舉表示的選擇當前狀態的清晰說明。

C# 列印功能(對開發人員的運作方式):圖 2 - Enum 輸出

打印到控制台而不換行

如果您想在不引入每個輸出之間新行的情況下打印文本內容,則Console.Write方法是您的選擇。此方法可防止輸出移至下一行。

using System;
class Program
{
    public static void Main(object [] sender) // object sender
    {
        Console.Write("This ");
        Console.Write("will ");
        Console.Write("be ");
        Console.Write("on ");
        Console.Write("the ");
        Console.Write("same ");
        Console.Write("line. Even it contains more lines");
    }
}
using System;
class Program
{
    public static void Main(object [] sender) // object sender
    {
        Console.Write("This ");
        Console.Write("will ");
        Console.Write("be ");
        Console.Write("on ");
        Console.Write("the ");
        Console.Write("same ");
        Console.Write("line. Even it contains more lines");
    }
}
Imports System
Friend Class Program
	Public Shared Sub Main(ByVal sender() As Object) ' object sender
		Console.Write("This ")
		Console.Write("will ")
		Console.Write("be ")
		Console.Write("on ")
		Console.Write("the ")
		Console.Write("same ")
		Console.Write("line. Even it contains more lines")
	End Sub
End Class
VB   C#

此一系列的Write 呼叫在同一行輸出,保持一個連貫的呈現。 這是 Write 方法和 WriteLine 方法之間的唯一區別。

使用 Unicode 字元列印

利用 Unicode 字符增強您的輸出,為控制台訊息增添風采。 例如:

Console.WriteLine("Hello \u2665 C#");
// \u2665 represents a heart symbol
Console.WriteLine("Hello \u2665 C#");
// \u2665 represents a heart symbol
Console.WriteLine("Hello " & ChrW(&H2665).ToString() & " C#")
' \u2665 represents a heart symbol
VB   C#

包含 Unicode 字元可以使您的控制台輸出更加美觀。

使用列印語句進行除錯

在開發過程中,打印語句對除錯非常有價值。 透過策略性地在程式中放置 Console.WriteLine 語句,您可以輸出變數的值或執行點,以了解程式流程和識別問題。

int x = 5;
int y = 10;
int sum = x + y;
Console.WriteLine($"The sum of {x} and {y} is {sum}");
int x = 5;
int y = 10;
int sum = x + y;
Console.WriteLine($"The sum of {x} and {y} is {sum}");
Dim x As Integer = 5
Dim y As Integer = 10
Dim sum As Integer = x + y
Console.WriteLine($"The sum of {x} and {y} is {sum}")
VB   C#

這有助於追踪變量值並理解計算或條件是如何被處理的。

C# 打印功能(對開發人員的作用):圖 3 - 調試輸出

复合格式化

複合字串格式化允許更動態和複雜的輸出。 您可以在字串中嵌入佔位符並用其他值替換它們:

double price = 19.99;
Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price);
double price = 19.99;
Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price);
Dim price As Double = 19.99
Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price)
VB   C#

這裡,佔位符 {0}{1} 替換為相應的值,提供了一種靈活的方式來構建您的輸出。

格式化日期和時間

顯示當前日期和時間是一個常見的需求。 C# 提供各種格式選項來顯示日期和時間資訊:

DateTime currentDate = DateTime.Now;
Console.WriteLine($"Current Date: {currentDate:d}");
Console.WriteLine($"Current Time: {currentDate:t}");
DateTime currentDate = DateTime.Now;
Console.WriteLine($"Current Date: {currentDate:d}");
Console.WriteLine($"Current Time: {currentDate:t}");
Dim currentDate As DateTime = DateTime.Now
Console.WriteLine($"Current Date: {currentDate:d}")
Console.WriteLine($"Current Time: {currentDate:t}")
VB   C#

自訂格式指定字元(dt 等。)允許開發人員以不同的方式呈現信息。

使用 Print 處理例外狀況

當發生例外時,列印相關資訊有助於識別問題。 例如:

try {
      // Some code that may throw an exception
} catch (Exception ex) {
      Console.WriteLine($"Exception Caught: {ex.Message}");
}
try {
      // Some code that may throw an exception
} catch (Exception ex) {
      Console.WriteLine($"Exception Caught: {ex.Message}");
}
Try
	  ' Some code that may throw an exception
Catch ex As Exception
	  Console.WriteLine($"Exception Caught: {ex.Message}")
End Try
VB   C#

打印例外訊息有助於在執行期間快速診斷問題。

使用 IronPrint 進行高級列印:C# 列印庫

IronPrint由 Iron Software 開發的,是一個強大且多功能的打印庫,旨在讓 .NET 開發人員輕鬆將打印功能集成到他們的應用程式中。 這款綜合工具因其兼容多個平台(包括 Windows、macOS、Android 和 iOS)而脫穎而出,是開發人員在多樣化專案中常用的解決方案。

C# 列印功能(開發人員如何使用):圖4 - IronPrint

IronPrint 的一大優勢在於其廣泛的文件格式支持,可適應 PDF、PNG、HTML、TIFF、GIF、JPEG 和 BMP。這種靈活性使開發人員能夠在其應用程式中處理各種列印需求。 無論您正在開發移動、桌面或控制台應用程式,IronPrint 都提供了一個統一的解決方案,以實現高效且可靠的列印功能。

IronPrint 的功能集包括可自定義的列印設定,讓開發人員能根據特定需求調整列印體驗。 此外,該庫提供顯示列印對話框的選項,增強用戶互動性和控制能力。 與不同 .NET 版本和專案類型的相容性進一步提升了其多功能性,使其適合各種開發情境。

安裝

要開始使用 IronPrint,請使用 NuGet 安裝套件:

Install-Package IronPrint

基本用法

使用 IronPrint 十分簡單。 以下程式碼列印使用 IronPrint 的文件:

using IronPrint;
Printer.Print("document.pdf");
using IronPrint;
Printer.Print("document.pdf");
Imports IronPrint
Printer.Print("document.pdf")
VB   C#

此最低限度的設置展示了 IronPrint 是如何輕鬆整合到您的專案中。

顯示對話框列印

IronPrint 通過允許您展示進一步擴展功能,這使得您可以展示一個列印對話框列印前:

Printer.ShowPrintDialog("document.pdf");
Printer.ShowPrintDialog("document.pdf");
Printer.ShowPrintDialog("document.pdf")
VB   C#

此功能讓使用者在列印過程中有更多的控制權。

自訂列印設定

IronPrint 使您能夠量身定制列印設定根據您的要求。 以下範例說明如何自訂設定,例如 DPI、列印副本數量和紙張方向:

PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait; Printer.Print("document.pdf", printSettings);
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait; Printer.Print("document.pdf", printSettings);
Dim printSettings As New PrintSettings()
printSettings.Dpi = 150
printSettings.NumberOfCopies = 2
printSettings.PaperOrientation = PaperOrientation.Portrait
Printer.Print("document.pdf", printSettings)
VB   C#

這種靈活性使您能夠根據具體需求微調列印過程。 如需有關 IronPrint 及其功能的更多資訊,請造訪此網站文檔頁面。

跨平台支援

IronPrint 兼容多種環境,包括 Windows、macOS、Android 和 iOS。 它可以無縫整合至 .NET 8、7、6、5、Core 3.1+ 和 .NET Framework。(4.6.2+). 無論您是在開發網頁、移動設備、桌面還是遊戲主機,IronPrint 都能為您提供支援。

結論

掌握 C# 打印的藝術對於創建穩健且用戶友好的應用程序至關重要。 無論您是使用 Console 類的內建功能還是利用像 IronPrint 這樣的高級庫,理解這些列印技術都是至關重要的。 這篇綜合性文章已經為您提供了在各種情境中有效打印的知識,確保您的應用程式能夠與用戶和利益相關者無縫交流。

雖然 IronPrint 是一個付費的函式庫,免費試用及其 Lite 套件的起價為 $749。 從下載該庫這裡.

< 上一頁
C# 列印變數:簡化您的代碼
下一個 >
C# 列印清單:快速教程

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

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