.NET 帮助 掌握 C# 打印功能:开发者指南 Jacob Mellor 已更新:七月 28, 2025 下载 IronPrint NuGet 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 C# 中的打印是开发人员的一项基础技能,使他们能够与用户沟通并记录关键信息。 Console类是一个功能强大的工具,它提供了一系列方法来应对不同的场景。 Microsoft C# 编程语言还提供了一个Print 方法,可用于打印到纸张上。 在这篇全面的文章中,我们将探讨 C# 打印的各个方面,涵盖基本技术、变量打印、列表打印、高级功能以及对 IronPrint 库的深入探索。 使用 Console.WriteLine 进行基本打印 C# 打印功能的核心是Console.WriteLine方法。 它是用于在控制台上显示格式化输出信息的首选函数。 这种方法的简洁性在以下示例中显而易见: Console.WriteLine("Hello, C# Print Function!"); // Print a string and move to a new line Console.WriteLine("Hello, C# Print Function!"); // Print a string and move to a new line Console.WriteLine("Hello, C# Print Function!") ' Print a string and move to a new line $vbLabelText $csharpLabel 这一行代码会将指定的字符串打印到控制台,并在后面加上一个换行符,从而整齐地呈现输出结果。 打印变量 打印变量值是一项常见需求。 C# 通过字符串插值或字符串连接来实现这一点。 以下是一个说明变量打印的示例: int age = 25; Console.WriteLine($"Age: {age}"); // Interpolating the variable 'age' into the string int age = 25; Console.WriteLine($"Age: {age}"); // Interpolating the variable 'age' into the string Dim age As Integer = 25 Console.WriteLine($"Age: {age}") ' Interpolating the variable 'age' into the string $vbLabelText $csharpLabel 在这种情况下,年龄变量的值被插入到字符串中,从而提供动态且信息丰富的输出。 C# 打印函数(开发者使用方法):图 1 - 同一行变量输出 打印用户输入 一种常见的应用场景是将用户输入打印到控制台。 请考虑以下示例: Console.Write("Enter your name: "); string name = Console.ReadLine(); // Read input from the user Console.WriteLine($"Hello, {name}!"); // Print a personalized greeting Console.Write("Enter your name: "); string name = Console.ReadLine(); // Read input from the user Console.WriteLine($"Hello, {name}!"); // Print a personalized greeting Console.Write("Enter your name: ") Dim name As String = Console.ReadLine() ' Read input from the user Console.WriteLine($"Hello, {name}!") ' Print a personalized greeting $vbLabelText $csharpLabel 在这种情况下,程序会提示用户输入,捕获输入内容,然后 WriteLine 方法会打印个性化的问候语。 打印列表 列表在 C# 编程语言中很常见,打印列表元素是一项有用的技能。 以下代码演示了如何将列表中的每个元素打印在新的一行上: List<string> fruits = new List<string> { "Apple", "Banana", "Orange" }; foreach (var fruit in fruits) { Console.WriteLine(fruit); // Print each element on a new line } List<string> fruits = new List<string> { "Apple", "Banana", "Orange" }; foreach (var fruit in fruits) { Console.WriteLine(fruit); // Print each element on a new line } Dim fruits As New List(Of String) From {"Apple", "Banana", "Orange"} For Each fruit In fruits Console.WriteLine(fruit) ' Print each element on a new line Next fruit $vbLabelText $csharpLabel 此循环遍历列表,并将每种水果打印在单独的一行上。 打印枚举值 枚举通常用于表示一组命名的常量。 打印枚举值有助于可视化和确认它们在代码中的用法: enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday } Days today = Days.Wednesday; Console.WriteLine($"Today is {today}"); // Print the current day enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday } Days today = Days.Wednesday; Console.WriteLine($"Today is {today}"); // Print the current day Friend Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum Private today As Days = Days.Wednesday Console.WriteLine($"Today is {today}") ' Print the current day $vbLabelText $csharpLabel 这有助于明确枚举所表示的当前选择状态。 C# 打印函数(开发者使用方法):图 2 - 枚举输出 打印到控制台时不换行符 如果您想打印文本内容而不在每行之间换行,可以使用Console.Write方法。此方法可以防止输出换行。 using System; class Program { public static void Main(string[] args) { // Each Write call adds text to the current line Console.Write("This "); Console.Write("will "); Console.Write("be "); Console.Write("on "); Console.Write("the "); Console.Write("same "); Console.Write("line."); } } using System; class Program { public static void Main(string[] args) { // Each Write call adds text to the current line Console.Write("This "); Console.Write("will "); Console.Write("be "); Console.Write("on "); Console.Write("the "); Console.Write("same "); Console.Write("line."); } } Imports System Friend Class Program Public Shared Sub Main(ByVal args() As String) ' Each Write call adds text to the current line Console.Write("This ") Console.Write("will ") Console.Write("be ") Console.Write("on ") Console.Write("the ") Console.Write("same ") Console.Write("line.") End Sub End Class $vbLabelText $csharpLabel 这一系列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 $vbLabelText $csharpLabel 在控制台输出中加入 Unicode 字符,可以使其更具视觉吸引力。 使用打印语句进行调试 在开发过程中,打印语句对于调试至关重要。 通过在代码中策略性地放置Console.WriteLine语句,您可以输出变量值或执行点,从而了解程序流程并识别问题。 int x = 5; int y = 10; int sum = x + y; Console.WriteLine($"The sum of {x} and {y} is {sum}"); // Print sum to debug int x = 5; int y = 10; int sum = x + y; Console.WriteLine($"The sum of {x} and {y} is {sum}"); // Print sum to debug 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}") ' Print sum to debug $vbLabelText $csharpLabel 这有助于跟踪变量值,并了解计算或条件是如何处理的。 C# 打印函数(开发者使用方法):图 3 - 调试输出 组合格式 复合字符串格式化允许输出更动态、更复杂的内容。 您可以在字符串中嵌入占位符,并将其替换为值: double price = 19.99; Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price); // Use placeholders in string double price = 19.99; Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price); // Use placeholders in string Dim price As Double = 19.99 Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price) ' Use placeholders in string $vbLabelText $csharpLabel 这里,占位符{0}和{1}被相应的值替换,从而提供了一种灵活的方式来组织输出。 格式化日期和时间 打印当前日期和时间是一项常见需求。 C# 提供了多种格式化选项来显示日期和时间信息: DateTime currentDate = DateTime.Now; Console.WriteLine($"Current Date: {currentDate:d}"); // Print date in short format Console.WriteLine($"Current Time: {currentDate:t}"); // Print time in short format DateTime currentDate = DateTime.Now; Console.WriteLine($"Current Date: {currentDate:d}"); // Print date in short format Console.WriteLine($"Current Time: {currentDate:t}"); // Print time in short format Dim currentDate As DateTime = DateTime.Now Console.WriteLine($"Current Date: {currentDate:d}") ' Print date in short format Console.WriteLine($"Current Time: {currentDate:t}") ' Print time in short format $vbLabelText $csharpLabel 自定义格式说明符( d 、 t等)允许开发人员以不同的方式呈现信息。 使用打印处理异常 当出现异常情况时,打印相关信息有助于识别问题所在。 例如: try { // Some code that may throw an exception } catch (Exception ex) { Console.WriteLine($"Exception Caught: {ex.Message}"); // Print exception message } try { // Some code that may throw an exception } catch (Exception ex) { Console.WriteLine($"Exception Caught: {ex.Message}"); // Print exception message } Try ' Some code that may throw an exception Catch ex As Exception Console.WriteLine($"Exception Caught: {ex.Message}") ' Print exception message End Try $vbLabelText $csharpLabel 打印异常消息有助于在运行时快速诊断问题。 使用 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 安装软件包: nuget install IronPrint nuget install IronPrint SHELL 基本用法 使用 IronPrint 非常简单。 以下代码使用 IronPrint打印文档: using IronPrint; Printer.Print("document.pdf"); // Print a document using IronPrint using IronPrint; Printer.Print("document.pdf"); // Print a document using IronPrint Imports IronPrint Printer.Print("document.pdf") ' Print a document using IronPrint $vbLabelText $csharpLabel 这种极简的设置方式展现了 IronPrint 如何轻松地集成到您的项目中。 带对话框的打印 IronPrint 扩展了功能,允许您在打印前显示打印对话框: Printer.ShowPrintDialog("document.pdf"); // Show a dialog before printing Printer.ShowPrintDialog("document.pdf"); // Show a dialog before printing Printer.ShowPrintDialog("document.pdf") ' Show a dialog before printing $vbLabelText $csharpLabel 此功能使用户能够对打印过程进行更多控制。 自定义打印设置 IronPrint 使您能够根据自己的需求定制打印设置。 以下示例说明了如何自定义 DPI、份数和纸张方向等设置: PrintSettings printSettings = new PrintSettings(); printSettings.Dpi = 150; printSettings.NumberOfCopies = 2; printSettings.PaperOrientation = PaperOrientation.Portrait; Printer.Print("document.pdf", printSettings); // Customized print settings PrintSettings printSettings = new PrintSettings(); printSettings.Dpi = 150; printSettings.NumberOfCopies = 2; printSettings.PaperOrientation = PaperOrientation.Portrait; Printer.Print("document.pdf", printSettings); // Customized print settings Dim printSettings As New PrintSettings() printSettings.Dpi = 150 printSettings.NumberOfCopies = 2 printSettings.PaperOrientation = PaperOrientation.Portrait Printer.Print("document.pdf", printSettings) ' Customized print settings $vbLabelText $csharpLabel 这种灵活性使您能够根据具体需求微调打印过程。 有关 IronPrint 及其功能的更多信息,请访问此文档页面。 跨平台支持 IronPrint 拥有与多种环境的兼容性,包括 Windows、macOS、Android 和 iOS。 它与 .NET 8、7、6、5、Core 3.1+ 和 .NET Framework (4.6.2+) 无缝集成。 无论您是为 Web、移动设备、桌面设备还是游戏主机开发应用,IronPrint 都能满足您的需求。 结论 掌握 C# 中的打印技巧对于创建强大且用户友好的应用程序至关重要。 无论您是使用Console类的内置功能,还是利用 IronPrint 等高级库,了解这些打印技术都至关重要。 本文内容全面,使您掌握了在各种场景下有效打印的知识,确保您的应用程序能够与用户和利益相关者无缝沟通。 IronPrint 是一个付费库,提供免费试用,其 Lite 套餐起价为$799 。 从这里下载库文件。 常见问题解答 如何增强 C# 应用程序中的打印功能? 要增强 C# 应用程序中的打印功能,您可以使用 IronPrint 库。它支持多种文件格式,提供可自定义的打印设置,并兼容 Windows、macOS、Android 和 iOS 等平台。 在 C# 中用于在控制台上显示输出的主要方法是什么? 在 C# 中用于在控制台上显示输出的主要方法是 Console.WriteLine。它用于在控制台应用程序中显示格式化文本和数值。 如何在 C# 中打印列表的元素? 要在 C# 中打印列表的元素,您可以使用 foreach 循环迭代列表,并使用 Console.WriteLine 输出每个元素。 C# 中的复合格式化是什么? C# 中的复合格式化允许您在字符串中使用占位符,这些占位符由指定的值替换。例如,Console.WriteLine("Product: {0}, Price: ${1:F2}", "Widget", price) 使用占位符来构造输出。 我如何在 C# 中格式化日期和时间? C# 提供格式说明符,例如短日期的 'd' 和短时间的 't'。您可以将这些与 DateTime.Now 一起使用,以打印格式化的日期和时间。 如何在 C# 中打印 Unicode 字符? 您可以通过将 Unicode 转义序列(如 \u2665 表示心形符号)嵌入字符串中来在 C# 中打印 Unicode 字符。 在 C# 中 Console.WriteLine 常用于哪些方面? 在 C# 中,Console.WriteLine 常用于打印变量值、调试、记录信息以及在控制台应用程序中与用户通信。 如何将 IronPrint 集成到 C# 项目中? 可以通过安装库并使用其方法来管理打印设置、处理打印对话框和支持跨不同平台的多种文件格式,将 IronPrint 集成到 C# 项目中。 Jacob Mellor 立即与工程团队聊天 首席技术官 Jacob Mellor 是 Iron Software 的首席技术官,是 C# PDF 技术的先锋工程师。作为 Iron Software 核心代码库的原始开发者,自公司成立以来,他就塑造了公司的产品架构,并与首席执行官 Cameron Rimington 一起将其转变成一家公司,拥有50多人,服务于 NASA、特斯拉和全球政府机构。Jacob 拥有曼彻斯特大学 (1998-2001) 的一级荣誉土木工程学士学位。1999 年在伦敦创办了自己的第一家软件公司,并于 2005 年创建了他的第一个 .NET 组件后,他专注于解决微软生态系统中的复杂问题。他的旗舰 IronPDF 和 Iron Suite .NET 库在全球已获得超过 3000 万次的 NuGet 安装,其基础代码继续为全球使用的开发者工具提供支持。拥有 25 年商业经验和 41 年编程经验的 Jacob 仍专注于推动企业级 C#、Java 和 Python PDF 技术的创新,同时指导下一代技术领导者。 相关文章 已更新七月 28, 2025 C# 打印列表:快速教程 在本文中,我们将探索在 C# 中打印列表的不同方法。 阅读更多 已更新七月 28, 2025 如何有效使用 C# 打印行 在本文中,我们将探索 C# 中打印行的各种方法和技术。 阅读更多 已更新六月 22, 2025 C# 打印变量:简化你的代码 在这篇详细的文章中,我们将探索 C# 中打印变量的各个方面,涵盖不同的数据类型、格式选项和高级技术。 阅读更多 C# 打印变量:简化你的代码C# 打印列表:快速教程