.NET 帮助

掌握 C# 打印功能:开发人员指南

发布 2024年四月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 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 - 枚举输出

打印到控制台时不换行

如果您想打印文本内容,而又不想在每次输出之间引入新行,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 等。)允许开发人员以不同的方式展示信息。

使用打印处理异常

当出现异常时,打印相关信息有助于发现问题。 例如

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# 打印库

铁印由 Iron Software 开发的.NET 打印库是一个强大的多功能打印库,旨在增强 .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 及其功能的更多信息,请访问此处文件page.

跨平台支持

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.11 刚刚发布

免费NuGet下载 总下载量: 11,216 查看许可证 >