Console.WriteLine 方法

定义

将指定的数据(后跟当前行终止符)写入标准输出流。

重载

WriteLine(String, Object, Object)

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(String)

将指定的字符串值(后跟当前行终止符)写入标准输出流。

WriteLine(Char[], Int32, Int32)

将 Unicode 字符的指定子数组(后跟当前行终止符)写入标准输出流。

WriteLine(String, ReadOnlySpan<Object>)

使用指定的格式信息将指定对象范围的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(String, Object[])

使用指定的格式信息将指定对象数组的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(String, Object)

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(UInt64)

将指定的 64 位无符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(UInt32)

将指定的 32 位无符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Single)

将指定的单精度浮点值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Double)

将指定的双精度浮点值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Int64)

将指定的 64 位带符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Int32)

将指定的 32 位有符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Decimal)

将指定 Decimal 值的文本表示形式(后接当前行终止符)写入标准输出流。

WriteLine(Char[])

将指定的 Unicode 字符数组(后跟当前行终止符)写入标准输出流。

WriteLine(Char)

将指定的 Unicode 字符(后跟当前行终止符)值写入标准输出流。

WriteLine(Boolean)

将指定布尔值的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine()

将当前行终止符写入标准输出流。

WriteLine(String, Object, Object, Object)

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(Object)

将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

WriteLine(String, Object, Object, Object, Object)

使用指定的格式信息将指定对象和可变长度参数列表的文本表示形式(后跟当前行终止符)写入标准输出流。

注解

默认行终止符是一个字符串,其值为回车符,后跟换行符(C# 中的“\r\n”,或在 Visual Basic 中 vbCrLf)。 可以通过将 Out 属性的 TextWriter.NewLine 属性设置为另一个字符串来更改行终止符。

WriteLine(String, Object, Object)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string format, object? arg0, object? arg1);
public static void WriteLine (string format, object arg0, object arg1);

参数

format
String

复合格式字符串。

arg0
Object

使用 format写入的第一个对象。

arg1
Object

使用 format写入的第二个对象。

例外

出现 I/O 错误。

format null

format 中的格式规范无效。

示例

以下示例演示数字、日期和枚举的标准格式说明符。

// This code example demonstrates the Console.WriteLine() method.
// Formatting for this example uses the "en-US" culture.

using System;
class Sample
{
    enum Color {Yellow = 1, Blue, Green};
    static DateTime thisDate = DateTime.Now;

    public static void Main()
    {
        Console.Clear();

        // Format a negative integer or floating-point number in various ways.
        Console.WriteLine("Standard Numeric Format Specifiers");
        Console.WriteLine(
            "(C) Currency: . . . . . . . . {0:C}\n" +
            "(D) Decimal:. . . . . . . . . {0:D}\n" +
            "(E) Scientific: . . . . . . . {1:E}\n" +
            "(F) Fixed point:. . . . . . . {1:F}\n" +
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(N) Number: . . . . . . . . . {0:N}\n" +
            "(P) Percent:. . . . . . . . . {1:P}\n" +
            "(R) Round-trip: . . . . . . . {1:R}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            -123, -123.45f);

        // Format the current date in various ways.
        Console.WriteLine("Standard DateTime Format Specifiers");
        Console.WriteLine(
            "(d) Short date: . . . . . . . {0:d}\n" +
            "(D) Long date:. . . . . . . . {0:D}\n" +
            "(t) Short time: . . . . . . . {0:t}\n" +
            "(T) Long time:. . . . . . . . {0:T}\n" +
            "(f) Full date/short time: . . {0:f}\n" +
            "(F) Full date/long time:. . . {0:F}\n" +
            "(g) General date/short time:. {0:g}\n" +
            "(G) General date/long time: . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(M) Month:. . . . . . . . . . {0:M}\n" +
            "(R) RFC1123:. . . . . . . . . {0:R}\n" +
            "(s) Sortable: . . . . . . . . {0:s}\n" +
            "(u) Universal sortable: . . . {0:u} (invariant)\n" +
            "(U) Universal full date/time: {0:U}\n" +
            "(Y) Year: . . . . . . . . . . {0:Y}\n",
            thisDate);

        // Format a Color enumeration value in various ways.
        Console.WriteLine("Standard Enumeration Format Specifiers");
        Console.WriteLine(
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)\n" +
            "(D) Decimal number: . . . . . {0:D}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            Color.Green);
    }
}
/*
This code example produces the following results:

Standard Numeric Format Specifiers
(C) Currency: . . . . . . . . ($123.00)
(D) Decimal:. . . . . . . . . -123
(E) Scientific: . . . . . . . -1.234500E+002
(F) Fixed point:. . . . . . . -123.45
(G) General:. . . . . . . . . -123
    (default):. . . . . . . . -123 (default = 'G')
(N) Number: . . . . . . . . . -123.00
(P) Percent:. . . . . . . . . -12,345.00 %
(R) Round-trip: . . . . . . . -123.45
(X) Hexadecimal:. . . . . . . FFFFFF85

Standard DateTime Format Specifiers
(d) Short date: . . . . . . . 6/26/2004
(D) Long date:. . . . . . . . Saturday, June 26, 2004
(t) Short time: . . . . . . . 8:11 PM
(T) Long time:. . . . . . . . 8:11:04 PM
(f) Full date/short time: . . Saturday, June 26, 2004 8:11 PM
(F) Full date/long time:. . . Saturday, June 26, 2004 8:11:04 PM
(g) General date/short time:. 6/26/2004 8:11 PM
(G) General date/long time: . 6/26/2004 8:11:04 PM
    (default):. . . . . . . . 6/26/2004 8:11:04 PM (default = 'G')
(M) Month:. . . . . . . . . . June 26
(R) RFC1123:. . . . . . . . . Sat, 26 Jun 2004 20:11:04 GMT
(s) Sortable: . . . . . . . . 2004-06-26T20:11:04
(u) Universal sortable: . . . 2004-06-26 20:11:04Z (invariant)
(U) Universal full date/time: Sunday, June 27, 2004 3:11:04 AM
(Y) Year: . . . . . . . . . . June, 2004

Standard Enumeration Format Specifiers
(G) General:. . . . . . . . . Green
    (default):. . . . . . . . Green (default = 'G')
(F) Flags:. . . . . . . . . . Green (flags or integer)
(D) Decimal number: . . . . . 3
(X) Hexadecimal:. . . . . . . 00000003

*/

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

此方法使用 .NET 复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串中。 生成的字符串将写入输出流。

format 参数包含与零个或多个索引占位符(称为格式项)混合的文本运行,这些占位符与此方法的参数列表中的对象相对应。 格式设置过程将每个格式项替换为相应对象值的文本表示形式。

格式项的语法 {索引[,对齐方式][:formatString]},它指定强制索引、格式化文本的可选长度和对齐方式,以及控制相应对象值的格式说明符字符的可选字符串。

.NET 提供广泛的格式支持,在以下格式设置主题中对此进行了更详细的介绍。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(String)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的字符串值(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string? value);
public static void WriteLine (string value);

参数

value
String

要写入的值。

例外

出现 I/O 错误。

示例

该示例将行终止符从其默认值“\r\n”或 vbCrLf 更改为“\r\n\r\n”或 vbCrLf + vbCrLf。 然后,它会调用 WriteLine()WriteLine(String) 方法以显示控制台的输出。

string[] lines = { "This is the first line.",
                   "This is the second line." };
// Output the lines using the default newline sequence.
Console.WriteLine("With the default new line characters:");
Console.WriteLine();
foreach (string line in lines)
   Console.WriteLine(line);

Console.WriteLine();

// Redefine the newline characters to double space.
Console.Out.NewLine = "\r\n\r\n";
// Output the lines using the new newline sequence.
Console.WriteLine("With redefined new line characters:");
Console.WriteLine();
foreach (string line in lines)
   Console.WriteLine(line);

// The example displays the following output:
//       With the default new line characters:
//
//       This is the first line.
//       This is the second line.
//
//       With redefined new line characters:
//
//
//
//       This is the first line.
//
//       This is the second line.

注解

如果值为 null,则仅将行终止符写入标准输出流。

有关行终止符的详细信息,请参阅 WriteLine() 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Char[], Int32, Int32)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将 Unicode 字符的指定子数组(后跟当前行终止符)写入标准输出流。

public static void WriteLine (char[] buffer, int index, int count);

参数

buffer
Char[]

Unicode 字符数组。

index
Int32

buffer中的起始位置。

count
Int32

要写入的字符数。

例外

buffer null

indexcount 小于零。

indexcount 指定不在 buffer内的位置。

出现 I/O 错误。

注解

此方法将 count 字符从 buffer 的位置 index 写入标准输出流。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(String, ReadOnlySpan<Object>)

使用指定的格式信息将指定对象范围的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string format, scoped ReadOnlySpan<object?> arg);

参数

format
String

复合格式字符串。

arg
ReadOnlySpan<Object>

使用格式写入的对象范围。

适用于

.NET 9
产品 版本
.NET 9

WriteLine(String, Object[])

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

使用指定的格式信息将指定对象数组的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string format, params object?[]? arg);
public static void WriteLine (string format, params object[] arg);

参数

format
String

复合格式字符串。

arg
Object[]

使用 format写入的对象数组。

例外

出现 I/O 错误。

formatargnull

format 中的格式规范无效。

示例

以下示例演示数字、日期和枚举的标准格式说明符。

// This code example demonstrates the Console.WriteLine() method.
// Formatting for this example uses the "en-US" culture.

using System;
class Sample
{
    enum Color {Yellow = 1, Blue, Green};
    static DateTime thisDate = DateTime.Now;

    public static void Main()
    {
        Console.Clear();

        // Format a negative integer or floating-point number in various ways.
        Console.WriteLine("Standard Numeric Format Specifiers");
        Console.WriteLine(
            "(C) Currency: . . . . . . . . {0:C}\n" +
            "(D) Decimal:. . . . . . . . . {0:D}\n" +
            "(E) Scientific: . . . . . . . {1:E}\n" +
            "(F) Fixed point:. . . . . . . {1:F}\n" +
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(N) Number: . . . . . . . . . {0:N}\n" +
            "(P) Percent:. . . . . . . . . {1:P}\n" +
            "(R) Round-trip: . . . . . . . {1:R}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            -123, -123.45f);

        // Format the current date in various ways.
        Console.WriteLine("Standard DateTime Format Specifiers");
        Console.WriteLine(
            "(d) Short date: . . . . . . . {0:d}\n" +
            "(D) Long date:. . . . . . . . {0:D}\n" +
            "(t) Short time: . . . . . . . {0:t}\n" +
            "(T) Long time:. . . . . . . . {0:T}\n" +
            "(f) Full date/short time: . . {0:f}\n" +
            "(F) Full date/long time:. . . {0:F}\n" +
            "(g) General date/short time:. {0:g}\n" +
            "(G) General date/long time: . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(M) Month:. . . . . . . . . . {0:M}\n" +
            "(R) RFC1123:. . . . . . . . . {0:R}\n" +
            "(s) Sortable: . . . . . . . . {0:s}\n" +
            "(u) Universal sortable: . . . {0:u} (invariant)\n" +
            "(U) Universal full date/time: {0:U}\n" +
            "(Y) Year: . . . . . . . . . . {0:Y}\n",
            thisDate);

        // Format a Color enumeration value in various ways.
        Console.WriteLine("Standard Enumeration Format Specifiers");
        Console.WriteLine(
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)\n" +
            "(D) Decimal number: . . . . . {0:D}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            Color.Green);
    }
}
/*
This code example produces the following results:

Standard Numeric Format Specifiers
(C) Currency: . . . . . . . . ($123.00)
(D) Decimal:. . . . . . . . . -123
(E) Scientific: . . . . . . . -1.234500E+002
(F) Fixed point:. . . . . . . -123.45
(G) General:. . . . . . . . . -123
    (default):. . . . . . . . -123 (default = 'G')
(N) Number: . . . . . . . . . -123.00
(P) Percent:. . . . . . . . . -12,345.00 %
(R) Round-trip: . . . . . . . -123.45
(X) Hexadecimal:. . . . . . . FFFFFF85

Standard DateTime Format Specifiers
(d) Short date: . . . . . . . 6/26/2004
(D) Long date:. . . . . . . . Saturday, June 26, 2004
(t) Short time: . . . . . . . 8:11 PM
(T) Long time:. . . . . . . . 8:11:04 PM
(f) Full date/short time: . . Saturday, June 26, 2004 8:11 PM
(F) Full date/long time:. . . Saturday, June 26, 2004 8:11:04 PM
(g) General date/short time:. 6/26/2004 8:11 PM
(G) General date/long time: . 6/26/2004 8:11:04 PM
    (default):. . . . . . . . 6/26/2004 8:11:04 PM (default = 'G')
(M) Month:. . . . . . . . . . June 26
(R) RFC1123:. . . . . . . . . Sat, 26 Jun 2004 20:11:04 GMT
(s) Sortable: . . . . . . . . 2004-06-26T20:11:04
(u) Universal sortable: . . . 2004-06-26 20:11:04Z (invariant)
(U) Universal full date/time: Sunday, June 27, 2004 3:11:04 AM
(Y) Year: . . . . . . . . . . June, 2004

Standard Enumeration Format Specifiers
(G) General:. . . . . . . . . Green
    (default):. . . . . . . . Green (default = 'G')
(F) Flags:. . . . . . . . . . Green (flags or integer)
(D) Decimal number: . . . . . 3
(X) Hexadecimal:. . . . . . . 00000003

*/

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

此方法使用 .NET 复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串中。 生成的字符串将写入输出流。

format 参数包含与零个或多个索引占位符(称为格式项)混合的文本运行,这些占位符与此方法的参数列表中的对象相对应。 格式设置过程将每个格式项替换为相应对象值的文本表示形式。

格式项的语法 {索引[,对齐方式][:formatString]},它指定强制索引、格式化文本的可选长度和对齐方式,以及控制相应对象值的格式说明符字符的可选字符串。

.NET 提供广泛的格式支持,在以下格式设置主题中对此进行了更详细的介绍。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

调用方说明

C++代码不调用此方法。 C++编译器将调用 System.Console.WriteLine 解析为调用 WriteLine(String, Object, Object, Object, Object)时包含字符串和四个或多个对象参数的列表。 它解析对 system.Console.WriteLine 的调用,其中包括字符串和对象数组作为对 WriteLine(String, Object)的调用。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(String, Object)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string format, object? arg0);
public static void WriteLine (string format, object arg0);

参数

format
String

复合格式字符串。

arg0
Object

使用 format写入的对象。

例外

出现 I/O 错误。

format null

format 中的格式规范无效。

示例

以下示例调用 WriteLine(String, Object) 方法以显示五个随机生成的 Boolean 值。

Random rnd = new Random();
// Generate five random Boolean values.
for (int ctr = 1; ctr <= 5; ctr++) {
   bool bln = rnd.Next(0, 2) == 1;
   Console.WriteLine($"True or False: {bln}");
}

// The example displays an output similar to the following:
//       True or False: False
//       True or False: True
//       True or False: False
//       True or False: False
//       True or False: True

以下示例调用 WriteLine(String, Object) 方法以显示当前日期。 请注意,format 参数中的格式项使用“D”标准日期和时间格式字符串 以当前区域性的长日期格式显示日期。

using System;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Today's date: {0:D}", DateTime.Now);
   }
}
// The example displays output like the following:
//       Today's date: Monday, April 1, 2019

注解

此方法使用 .NET 复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串中。 生成的字符串将写入输出流。

format 参数包含与零个或多个索引占位符(称为格式项)混合的文本运行,这些占位符与此方法的参数列表中的对象相对应。 格式设置过程将每个格式项替换为相应对象值的文本表示形式。

格式项的语法 {索引[,对齐方式][:formatString]},它指定强制索引、格式化文本的可选长度和对齐方式,以及控制相应对象值的格式说明符字符的可选字符串。

.NET 提供广泛的格式支持,在以下格式设置主题中对此进行了更详细的介绍。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(UInt64)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

重要

此 API 不符合 CLS。

将指定的 64 位无符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

[System.CLSCompliant(false)]
public static void WriteLine (ulong value);

参数

value
UInt64

要写入的值。

属性

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 UInt64.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(UInt32)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

重要

此 API 不符合 CLS。

将指定的 32 位无符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

[System.CLSCompliant(false)]
public static void WriteLine (uint value);

参数

value
UInt32

要写入的值。

属性

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 UInt32.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Single)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的单精度浮点值的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (float value);

参数

value
Single

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 Single.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Double)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的双精度浮点值的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (double value);

参数

value
Double

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 Double.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Int64)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的 64 位带符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (long value);

参数

value
Int64

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 Int64.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Int32)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的 32 位有符号整数值的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (int value);

参数

value
Int32

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 Int32.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Decimal)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定 Decimal 值的文本表示形式(后接当前行终止符)写入标准输出流。

public static void WriteLine (decimal value);

参数

value
Decimal

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

value 的文本表示形式是通过调用 Decimal.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Char[])

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的 Unicode 字符数组(后跟当前行终止符)写入标准输出流。

public static void WriteLine (char[]? buffer);
public static void WriteLine (char[] buffer);

参数

buffer
Char[]

Unicode 字符数组。

例外

出现 I/O 错误。

注解

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Char)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定的 Unicode 字符(后跟当前行终止符)值写入标准输出流。

public static void WriteLine (char value);

参数

value
Char

要写入的值。

例外

出现 I/O 错误。

示例

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Boolean)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定布尔值的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (bool value);

参数

value
Boolean

要写入的值。

例外

出现 I/O 错误。

示例

以下示例生成 10 个随机整数,并使用 Console.WriteLine(Boolean) 方法指示它们是否均匀。

// Assign 10 random integers to an array.
Random rnd = new Random();
int[] numbers = new int[10];
for (int ctr = 0; ctr <= numbers.GetUpperBound(0); ctr++)
   numbers[ctr] = rnd.Next();

// Determine whether the numbers are even or odd.
foreach (var number in numbers) {
   bool even = (number % 2 == 0);
   Console.WriteLine("Is {0} even:", number);
   Console.WriteLine(even);
   Console.WriteLine();
}

注解

value 的文本表示形式是通过调用 Boolean.ToString 方法生成的。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine()

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将当前行终止符写入标准输出流。

public static void WriteLine ();

例外

出现 I/O 错误。

示例

该示例将行终止符从其默认值“\r\n”或 vbCrLf 更改为“\r\n\r\n”或 vbCrLf + vbCrLf。 然后,它会调用 WriteLine()WriteLine(String) 方法以显示控制台的输出。

string[] lines = { "This is the first line.",
                   "This is the second line." };
// Output the lines using the default newline sequence.
Console.WriteLine("With the default new line characters:");
Console.WriteLine();
foreach (string line in lines)
   Console.WriteLine(line);

Console.WriteLine();

// Redefine the newline characters to double space.
Console.Out.NewLine = "\r\n\r\n";
// Output the lines using the new newline sequence.
Console.WriteLine("With redefined new line characters:");
Console.WriteLine();
foreach (string line in lines)
   Console.WriteLine(line);

// The example displays the following output:
//       With the default new line characters:
//
//       This is the first line.
//       This is the second line.
//
//       With redefined new line characters:
//
//
//
//       This is the first line.
//
//       This is the second line.

注解

默认行终止符是一个字符串,其值为回车符,后跟换行符(C# 中的“\r\n”,或在 Visual Basic 中 vbCrLf)。 可以通过将 Out 属性的 TextWriter.NewLine 属性设置为另一个字符串来更改行终止符。 该示例提供了一个插图。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(String, Object, Object, Object)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

使用指定的格式信息将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (string format, object? arg0, object? arg1, object? arg2);
public static void WriteLine (string format, object arg0, object arg1, object arg2);

参数

format
String

复合格式字符串。

arg0
Object

使用 format写入的第一个对象。

arg1
Object

使用 format写入的第二个对象。

arg2
Object

使用 format写入的第三个对象。

例外

出现 I/O 错误。

format null

format 中的格式规范无效。

示例

以下示例演示数字、日期和枚举的标准格式说明符。

// This code example demonstrates the Console.WriteLine() method.
// Formatting for this example uses the "en-US" culture.

using System;
class Sample
{
    enum Color {Yellow = 1, Blue, Green};
    static DateTime thisDate = DateTime.Now;

    public static void Main()
    {
        Console.Clear();

        // Format a negative integer or floating-point number in various ways.
        Console.WriteLine("Standard Numeric Format Specifiers");
        Console.WriteLine(
            "(C) Currency: . . . . . . . . {0:C}\n" +
            "(D) Decimal:. . . . . . . . . {0:D}\n" +
            "(E) Scientific: . . . . . . . {1:E}\n" +
            "(F) Fixed point:. . . . . . . {1:F}\n" +
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(N) Number: . . . . . . . . . {0:N}\n" +
            "(P) Percent:. . . . . . . . . {1:P}\n" +
            "(R) Round-trip: . . . . . . . {1:R}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            -123, -123.45f);

        // Format the current date in various ways.
        Console.WriteLine("Standard DateTime Format Specifiers");
        Console.WriteLine(
            "(d) Short date: . . . . . . . {0:d}\n" +
            "(D) Long date:. . . . . . . . {0:D}\n" +
            "(t) Short time: . . . . . . . {0:t}\n" +
            "(T) Long time:. . . . . . . . {0:T}\n" +
            "(f) Full date/short time: . . {0:f}\n" +
            "(F) Full date/long time:. . . {0:F}\n" +
            "(g) General date/short time:. {0:g}\n" +
            "(G) General date/long time: . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(M) Month:. . . . . . . . . . {0:M}\n" +
            "(R) RFC1123:. . . . . . . . . {0:R}\n" +
            "(s) Sortable: . . . . . . . . {0:s}\n" +
            "(u) Universal sortable: . . . {0:u} (invariant)\n" +
            "(U) Universal full date/time: {0:U}\n" +
            "(Y) Year: . . . . . . . . . . {0:Y}\n",
            thisDate);

        // Format a Color enumeration value in various ways.
        Console.WriteLine("Standard Enumeration Format Specifiers");
        Console.WriteLine(
            "(G) General:. . . . . . . . . {0:G}\n" +
            "    (default):. . . . . . . . {0} (default = 'G')\n" +
            "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)\n" +
            "(D) Decimal number: . . . . . {0:D}\n" +
            "(X) Hexadecimal:. . . . . . . {0:X}\n",
            Color.Green);
    }
}
/*
This code example produces the following results:

Standard Numeric Format Specifiers
(C) Currency: . . . . . . . . ($123.00)
(D) Decimal:. . . . . . . . . -123
(E) Scientific: . . . . . . . -1.234500E+002
(F) Fixed point:. . . . . . . -123.45
(G) General:. . . . . . . . . -123
    (default):. . . . . . . . -123 (default = 'G')
(N) Number: . . . . . . . . . -123.00
(P) Percent:. . . . . . . . . -12,345.00 %
(R) Round-trip: . . . . . . . -123.45
(X) Hexadecimal:. . . . . . . FFFFFF85

Standard DateTime Format Specifiers
(d) Short date: . . . . . . . 6/26/2004
(D) Long date:. . . . . . . . Saturday, June 26, 2004
(t) Short time: . . . . . . . 8:11 PM
(T) Long time:. . . . . . . . 8:11:04 PM
(f) Full date/short time: . . Saturday, June 26, 2004 8:11 PM
(F) Full date/long time:. . . Saturday, June 26, 2004 8:11:04 PM
(g) General date/short time:. 6/26/2004 8:11 PM
(G) General date/long time: . 6/26/2004 8:11:04 PM
    (default):. . . . . . . . 6/26/2004 8:11:04 PM (default = 'G')
(M) Month:. . . . . . . . . . June 26
(R) RFC1123:. . . . . . . . . Sat, 26 Jun 2004 20:11:04 GMT
(s) Sortable: . . . . . . . . 2004-06-26T20:11:04
(u) Universal sortable: . . . 2004-06-26 20:11:04Z (invariant)
(U) Universal full date/time: Sunday, June 27, 2004 3:11:04 AM
(Y) Year: . . . . . . . . . . June, 2004

Standard Enumeration Format Specifiers
(G) General:. . . . . . . . . Green
    (default):. . . . . . . . Green (default = 'G')
(F) Flags:. . . . . . . . . . Green (flags or integer)
(D) Decimal number: . . . . . 3
(X) Hexadecimal:. . . . . . . 00000003

*/

下面的示例是一个小费计算器,它计算 18% 小费,并使用 WriteLine 方法显示原始费用量、小费金额和总金额。 该示例是一个控制台应用程序,它要求用户以命令行参数的形式提供原始费用量。

using System;

public class TipCalculator
{
    private const double tipRate = 0.18;
    public static void Main(string[] args)
    {
        double billTotal;
        if (args.Length == 0 || ! Double.TryParse(args[0], out billTotal))
        {
            Console.WriteLine("usage: TIPCALC total");
            return;
        }
        double tip = billTotal * tipRate;
        Console.WriteLine();
        Console.WriteLine($"Bill total:\t{billTotal,8:c}");
        Console.WriteLine($"Tip total/rate:\t{tip,8:c} ({tipRate:p1})");
        Console.WriteLine(("").PadRight(24, '-'));
        Console.WriteLine($"Grand total:\t{billTotal + tip,8:c}");
    }
}

/*
>tipcalc 52.23

Bill total:       $52.23
Tip total/rate:    $9.40 (18.0 %)
------------------------
Grand total:      $61.63
*/

注解

此方法使用 .NET 复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串中。 生成的字符串将写入输出流。

format 参数包含与零个或多个索引占位符(称为格式项)混合的文本运行,这些占位符与此方法的参数列表中的对象相对应。 格式设置过程将每个格式项替换为相应对象值的文本表示形式。

格式项的语法 {索引[,对齐方式][:formatString]},它指定强制索引、格式化文本的可选长度和对齐方式,以及控制相应对象值的格式说明符字符的可选字符串。

.NET 提供广泛的格式支持,在以下格式设置主题中对此进行了更详细的介绍。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(Object)

Source:
Console.cs
Source:
Console.cs
Source:
Console.cs

将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。

public static void WriteLine (object? value);
public static void WriteLine (object value);

参数

value
Object

要写入的值。

例外

出现 I/O 错误。

示例

以下示例使用 WriteLine(Object) 方法向控制台显示对象数组中的每个值。

Object[] values = { true, 12.632, 17908, "stringValue",
                           'a', 16907.32m };
foreach (var value in values)
   Console.WriteLine(value);

// The example displays the following output:
//    True
//    12.632
//    17908
//    stringValue
//    a
//    16907.32

注解

如果 valuenull,则只写入行终止符。 否则,将调用 valueToString 方法以生成其字符串表示形式,生成的字符串将写入标准输出流。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

另请参阅

适用于

.NET 9 和其他版本
产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

WriteLine(String, Object, Object, Object, Object)

重要

此 API 不符合 CLS。

使用指定的格式信息将指定对象和可变长度参数列表的文本表示形式(后跟当前行终止符)写入标准输出流。

[System.CLSCompliant(false)]
public static void WriteLine (string format, object arg0, object arg1, object arg2, object arg3);

参数

format
String

复合格式字符串。

arg0
Object

使用 format写入的第一个对象。

arg1
Object

使用 format写入的第二个对象。

arg2
Object

使用 format写入的第三个对象。

arg3
Object

使用 format写入的第四个对象。

属性

例外

出现 I/O 错误。

format null

format 中的格式规范无效。

示例

以下示例演示如何将变量参数与 WriteLine(String, Object, Object, Object, Object) 方法结合使用。 该方法使用复合格式字符串和五个格式项调用。

using namespace System;

int CountLetters(String^ value);
int CountWhitespace(String^ value);

void main()
{
   String^ value = "This is a test string.";
   
   
   Console::WriteLine("The string '{0}' consists of:" +
                      "{4}{1} characters{4}{2} letters{4}" +
                      "{3} white-space characters", 
                      value, value->Length, CountLetters(value), 
                      CountWhitespace(value), Environment::NewLine);
}

int CountLetters(String^ value)
{
   int nLetters = 0;
   for each (Char ch in value) {
      if (Char::IsLetter(ch))
         nLetters++;
   }
   return nLetters;
}

int CountWhitespace(String^ value)
{
   int nWhitespace = 0;
   for each (Char ch in value) {
      if (Char::IsWhiteSpace(ch))
         nWhitespace++;
   }
   return nWhitespace;
}
// The example displays the following output:
//    The string 'This is a test string.' consists of:
//    22 characters
//    17 letters
//    4 white-space characters

注解

备注

此 API 不符合 CLS。 符合 CLS 的替代方法是 Console.WriteLine(String, Object[])。 C# 和 Visual Basic 编译器会自动解析对此方法的调用作为对 Console.WriteLine(String, Object[])的调用。

此方法使用 .NET 复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串中。 生成的字符串将写入输出流。

format 参数包含与零个或多个索引占位符(称为格式项)混合的文本运行,这些占位符与此方法的参数列表中的对象相对应。 格式设置过程将每个格式项替换为相应对象值的文本表示形式。

格式项的语法 {索引[,对齐方式][:formatString]},它指定强制索引、格式化文本的可选长度和对齐方式,以及控制相应对象值的格式说明符字符的可选字符串。

.NET 提供广泛的格式支持,在以下格式设置主题中对此进行了更详细的介绍。

有关行终止符的详细信息,请参阅不带参数的 WriteLine 方法的“备注”部分。

调用方说明

此方法使用 vararg 关键字进行标记,这意味着它支持可变数量的参数。 可以从 Visual C++调用该方法,但不能从 C# 或 Visual Basic 代码调用该方法。 C# 和 Visual Basic 编译器将对 WriteLine(String, Object, Object, Object, Object) 的调用解析为对 WriteLine(String, Object[])的调用。

另请参阅

适用于

.NET Framework 4.8.1 和其他版本
产品 版本
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1