在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
在 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
在上述代码中,Console.WriteLine语句输出指定的字符串值("Hello, C# Print Line!"),并在后面加上一个新行。这是通过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
在上述示例中,程序执行后,每个Console.WriteLine都会在 C# 控制台窗口中产生新行,从而生成指定的两行。
如果您需要显式控制行终止符,可以使用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
在此示例中,回车符('\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
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
在此示例中,{0} 是指定对象的占位符(在此情况下为 answer 和 name),允许您在输出中包含变量数据并打印指定的格式信息。
对于特殊的换行符或 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
在这里,\n 和 \u000A, 指定的 Unicode 字符,都表示换行符字符,在每种情况下都会导致文本移到下一行。
以下代码在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
从表达式返回的指定数据将打印在控制台应用程序上,如下所示:
打印各种数字格式是编程中的常见要求,尤其是在处理双精度浮点数和单精度浮点数时。 同样,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}")
在此示例中,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}")
打印现有字符串非常简单。 只需使用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}")
类似于双精度,这里使用F7格式说明符用于单精度浮点数。 您可以根据自己的精度要求调整 "F "后面的数字。
打印文档是许多应用程序的一个基本方面,在 C# 中充分发挥打印的潜力时,IronPrint 作为一个功能丰富的通用库脱颖而出。
IronPrint,由Iron Software开发,是一个为.NET生态系统设计的高级打印库,包括C#。 无论您是在开发桌面、移动还是网络应用程序,IronPrint 都能与您的 C# 项目无缝集成,为处理各种打印需求提供一套全面的工具。
1. 跨平台兼容性:
IronPrint 支持各种操作系统,包括 Windows、macOS、Android 和 iOS。 这种跨平台兼容性可确保您的打印解决方案能够覆盖不同环境下的用户。
2. .NET 版本支持:
IronPrint for .NET 兼容 .NET Framework 4.6.2 及以上版本、.NET Core 3.1+ 以及最新的 .NET 版本,可覆盖广泛的 .NET 环境。
3. 项目类型支持:
IronPrint适用于不同类型的项目,包括移动端(Xamarin和MAUI)、桌面端(WPF和MAUI),以及控制台(应用程序和库)。 这种灵活性使其适用于各种应用架构。
4. 简单安装:
IronPrint 入门易如反掌。 您可以通过使用 NuGet 包管理器控制台并执行 Install-Package 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
此输出显示了使用Print和ShowPrintDialog方法打印文档。 如果未安装物理打印机,则使用默认打印机进行打印。
IronPrint 的功能超出了基本打印任务的范围,并提供了以下高级功能:
IronPrint 可让您为不同平台量身定制打印解决方案。 例如,当处理针对特定平台(如 Windows、Android、iOS 或 macOS)的 .NET Core 项目时,可以相应地调整项目文件中的 TargetFrameworks 属性。
要获取有关IronPrint的更多详细信息,请访问此文档和API参考页面。
在 C# 中打印行是控制台应用程序开发的基础技能。 无论是显示文本、格式化输出还是控制行结束符,了解各种可用的技术都将提高您创建高效、可读性强的控制台程序的能力。 探索由Console类提供的多种方法,尝试格式化选项,并利用C#的灵活性,在您的应用程序中生成清晰且结构良好的控制台输出。
对于寻求强大而灵活的打印功能的 C# 开发人员来说,IronPrint 是一个强大的盟友。 IronPrint 支持跨平台、与各种 .NET 版本兼容并具有高级打印功能,可简化各种 C# 应用程序中打印解决方案的实施。 无论您是为桌面、移动还是网络进行开发,IronPrint 都能为您提供所需的工具,让您在 C# 开发的世界中实现打印需求。