Console.WriteLine 方法

定义

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

重载

WriteLine(String, Object, Object)

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

WriteLine(String)

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

WriteLine(Char[], Int32, Int32)

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

WriteLine(String, Object[])

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

WriteLine(String, Object)

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

WriteLine(UInt64)

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

WriteLine(UInt32)

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

WriteLine(Single)

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

WriteLine(Decimal)

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

WriteLine(Int64)

将指定的 64 位有符号整数值的文本表示(后跟当前行的结束符)写入标准输出流。

WriteLine(Int32)

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

WriteLine(Double)

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

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 中的换 vbCrLf 行符Visual Basic) 。 可以通过将 属性的 属性设置为另一个字符串 TextWriter.NewLine Out 来更改行终止符。

WriteLine(String, Object, Object)

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

public:
 static void WriteLine(System::String ^ format, System::Object ^ arg0, System::Object ^ arg1);
public static void WriteLine (string format, object? arg0, object? arg1);
public static void WriteLine (string format, object arg0, object arg1);
static member WriteLine : string * obj * obj -> unit
Public Shared Sub WriteLine (format As String, arg0 As Object, arg1 As Object)

参数

format
String

复合格式字符串。

arg0
Object

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

arg1
Object

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

例外

出现 I/O 错误。

formatnull

format 中的格式规范无效。

示例

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

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

using namespace System;

public enum class Color {Yellow = 1, Blue, Green};

int main() 
{
    DateTime thisDate = DateTime::Now;
    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

*/
// 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

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

open System

type Color = 
    | Yellow = 1
    | Blue = 2
    | Green = 3

let thisDate = DateTime.Now

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
' This code example demonstrates the Console.WriteLine() method.
' Formatting for this example uses the "en-US" culture.

Class Sample
   Public Enum Color
      Yellow = 1
      Blue = 2
      Green = 3
   End Enum 'Color
   Private Shared thisDate As DateTime = DateTime.Now
   
   Public Shared Sub 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}" & vbCrLf & _
                        "(D) Decimal:. . . . . . . . . {0:D}" & vbCrLf & _
                        "(E) Scientific: . . . . . . . {1:E}" & vbCrLf & _
                        "(F) Fixed point:. . . . . . . {1:F}" & vbCrLf & _
                        "(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(N) Number: . . . . . . . . . {0:N}" & vbCrLf & _
                        "(P) Percent:. . . . . . . . . {1:P}" & vbCrLf & _
                        "(R) Round-trip: . . . . . . . {1:R}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        - 123, - 123.45F)

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

      ' Format a Color enumeration value in various ways.
      Console.WriteLine("Standard Enumeration Format Specifiers")
      Console.WriteLine("(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)" & vbCrLf & _
                        "(D) Decimal number: . . . . . {0:D}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        Color.Green)
   End Sub
End Class
'
'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
'

下面的示例是一个 tip 计算器,它计算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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

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

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

.NET 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。

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

另请参阅

适用于

WriteLine(String)

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

public:
 static void WriteLine(System::String ^ value);
public static void WriteLine (string? value);
public static void WriteLine (string value);
static member WriteLine : string -> unit
Public Shared Sub WriteLine (value As String)

参数

value
String

要写入的值。

例外

出现 I/O 错误。

示例

该示例将行终止符从默认值"\r\n"或 vbCrLf "\r\n\r\n"或 vbCrLf + vbCrLf 。 然后,它 WriteLine() 调用 WriteLine(String) 和 方法来向控制台显示输出。

using namespace System;

void main()
{
   array<String^>^ lines = gcnew array<String^> { "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();
   for each (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();
   for each (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.
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.
let 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()
for line in lines do
    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()
for line in lines do
    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.
Module Example
   Public Sub Main()
      Dim lines() As String = { "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()
      For Each line As String In lines
         Console.WriteLine(line)
      Next
      Console.WriteLine()
      
      ' Redefine the newline characters to double space.
      Console.Out.NewLine = vbCrLf + vbCrLf
      ' Output the lines using the new newline sequence.
      Console.WriteLine("With redefined new line characters:")
      Console.WriteLine()
      For Each line As String In lines
         Console.WriteLine(line)
      Next
   End Sub
End Module
' 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() 部分。

另请参阅

适用于

WriteLine(Char[], Int32, Int32)

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

public:
 static void WriteLine(cli::array <char> ^ buffer, int index, int count);
public static void WriteLine (char[] buffer, int index, int count);
static member WriteLine : char[] * int * int -> unit
Public Shared Sub WriteLine (buffer As Char(), index As Integer, count As Integer)

参数

buffer
Char[]

Unicode 字符的数组。

index
Int32

buffer 中的起始位置。

count
Int32

要写入的字符数。

例外

buffernull

indexcount 小于零。

indexcount 指定不在 buffer 内的位置。

出现 I/O 错误。

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(String, Object[])

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

public:
 static void WriteLine(System::String ^ format, ... cli::array <System::Object ^> ^ arg);
public static void WriteLine (string format, params object?[]? arg);
public static void WriteLine (string format, params object[] arg);
static member WriteLine : string * obj[] -> unit
Public Shared Sub WriteLine (format As String, ParamArray arg As Object())

参数

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 namespace System;

public enum class Color {Yellow = 1, Blue, Green};

int main() 
{
    DateTime thisDate = DateTime::Now;
    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

*/
// 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

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

open System

type Color = 
    | Yellow = 1
    | Blue = 2
    | Green = 3

let thisDate = DateTime.Now

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
' This code example demonstrates the Console.WriteLine() method.
' Formatting for this example uses the "en-US" culture.

Class Sample
   Public Enum Color
      Yellow = 1
      Blue = 2
      Green = 3
   End Enum 'Color
   Private Shared thisDate As DateTime = DateTime.Now
   
   Public Shared Sub 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}" & vbCrLf & _
                        "(D) Decimal:. . . . . . . . . {0:D}" & vbCrLf & _
                        "(E) Scientific: . . . . . . . {1:E}" & vbCrLf & _
                        "(F) Fixed point:. . . . . . . {1:F}" & vbCrLf & _
                        "(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(N) Number: . . . . . . . . . {0:N}" & vbCrLf & _
                        "(P) Percent:. . . . . . . . . {1:P}" & vbCrLf & _
                        "(R) Round-trip: . . . . . . . {1:R}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        - 123, - 123.45F)

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

      ' Format a Color enumeration value in various ways.
      Console.WriteLine("Standard Enumeration Format Specifiers")
      Console.WriteLine("(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)" & vbCrLf & _
                        "(D) Decimal number: . . . . . {0:D}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        Color.Green)
   End Sub
End Class
'
'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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

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

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

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

调用方说明

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

另请参阅

适用于

WriteLine(String, Object)

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

public:
 static void WriteLine(System::String ^ format, System::Object ^ arg0);
public static void WriteLine (string format, object? arg0);
public static void WriteLine (string format, object arg0);
static member WriteLine : string * obj -> unit
Public Shared Sub WriteLine (format As String, arg0 As Object)

参数

format
String

复合格式字符串。

arg0
Object

要使用 format 写入的对象。

例外

出现 I/O 错误。

formatnull

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
let rnd = Random()

// Generate five random Boolean values.
for _ = 1 to 5 do
    let 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
Module Example
   Public Sub Main()
      Dim rnd As New Random()
      ' Generate five random Boolean values.
      For ctr As Integer = 1 To 5
         Dim bool As Boolean = Convert.ToBoolean(rnd.Next(0, 2))
         Console.WriteLine("True or False: {0}", bool)
      Next
   End Sub
End Module
' The example displays the following output:
'       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
open System

Console.WriteLine $"Today's date: {DateTime.Now:D}"

// The example displays output like the following:
//       Today's date: Tuesday, December 28, 2021
Module Example
   Public Sub Main()
      Console.WriteLine("Today's date: {0:D}", DateTime.Now)
   End Sub
End Module
' The example displays output like the following:
'       Today's date: Friday, April 1, 2016

注解

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

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

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

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(UInt64)

重要

此 API 不符合 CLS。

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

public:
 static void WriteLine(System::UInt64 value);
[System.CLSCompliant(false)]
public static void WriteLine (ulong value);
[<System.CLSCompliant(false)>]
static member WriteLine : uint64 -> unit
Public Shared Sub WriteLine (value As ULong)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(UInt32)

重要

此 API 不符合 CLS。

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

public:
 static void WriteLine(System::UInt32 value);
[System.CLSCompliant(false)]
public static void WriteLine (uint value);
[<System.CLSCompliant(false)>]
static member WriteLine : uint32 -> unit
Public Shared Sub WriteLine (value As UInteger)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Single)

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

public:
 static void WriteLine(float value);
public static void WriteLine (float value);
static member WriteLine : single -> unit
Public Shared Sub WriteLine (value As Single)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Decimal)

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

public:
 static void WriteLine(System::Decimal value);
public static void WriteLine (decimal value);
static member WriteLine : decimal -> unit
Public Shared Sub WriteLine (value As Decimal)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Int64)

将指定的 64 位有符号整数值的文本表示(后跟当前行的结束符)写入标准输出流。

public:
 static void WriteLine(long value);
public static void WriteLine (long value);
static member WriteLine : int64 -> unit
Public Shared Sub WriteLine (value As Long)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Int32)

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

public:
 static void WriteLine(int value);
public static void WriteLine (int value);
static member WriteLine : int -> unit
Public Shared Sub WriteLine (value As Integer)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Double)

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

public:
 static void WriteLine(double value);
public static void WriteLine (double value);
static member WriteLine : double -> unit
Public Shared Sub WriteLine (value As Double)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Char[])

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

public:
 static void WriteLine(cli::array <char> ^ buffer);
public static void WriteLine (char[]? buffer);
public static void WriteLine (char[] buffer);
static member WriteLine : char[] -> unit
Public Shared Sub WriteLine (buffer As Char())

参数

buffer
Char[]

Unicode 字符数组。

例外

出现 I/O 错误。

注解

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Char)

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

public:
 static void WriteLine(char value);
public static void WriteLine (char value);
static member WriteLine : char -> unit
Public Shared Sub WriteLine (value As Char)

参数

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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine(Boolean)

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

public:
 static void WriteLine(bool value);
public static void WriteLine (bool value);
static member WriteLine : bool -> unit
Public Shared Sub WriteLine (value As Boolean)

参数

value
Boolean

要写入的值。

例外

出现 I/O 错误。

示例

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

using namespace System;

void main()
{
   // Assign 10 random integers to an array.
   Random^ rnd = gcnew Random();
   array<Int32>^ numbers = gcnew array<Int32>(10); 
   for (int ctr = 0; ctr <= numbers->GetUpperBound(0); ctr++)
      numbers[ctr] = rnd->Next();

   // Determine whether the numbers are even or odd.
   for each (Int32 number in numbers) {
      bool even = (number % 2 == 0);
      Console::WriteLine("Is {0} even:", number);
      Console::WriteLine(even);
      Console::WriteLine();      
   }
}
// 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();
}
// Assign 10 random integers to an array.
let rnd = Random()
let numbers = 
    [ for _ = 0 to 9 do
        rnd.Next()]

// Determine whether the numbers are even or odd.
for number in numbers do
    let even = number % 2 = 0
    Console.WriteLine $"Is {number} even:"
    Console.WriteLine even
    Console.WriteLine()
Module Example
   Public Sub Main()
      ' Assign 10 random integers to an array.
      Dim rnd As New Random()
      Dim numbers(9) As Integer
      For ctr As Integer = 0 To numbers.GetUpperBound(0)
         numbers(ctr) = rnd.Next
      Next
      
      ' Determine whether the numbers are even or odd.
      For Each number In numbers
         Dim even As Boolean = (number mod 2 = 0)
         Console.WriteLine("Is {0} even:", number)
         Console.WriteLine(even)
         Console.WriteLine()      
      Next
   End Sub
End Module

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

WriteLine()

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

public:
 static void WriteLine();
public static void WriteLine ();
static member WriteLine : unit -> unit
Public Shared Sub WriteLine ()

例外

出现 I/O 错误。

示例

该示例将行终止符从默认值"\r\n"或 vbCrLf "\r\n\r\n"或 vbCrLf + vbCrLf 。 然后,它 WriteLine() 调用 WriteLine(String) 和 方法来向控制台显示输出。

using namespace System;

void main()
{
   array<String^>^ lines = gcnew array<String^> { "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();
   for each (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();
   for each (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.
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.
let 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()
for line in lines do
    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()
for line in lines do
    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.
Module Example
   Public Sub Main()
      Dim lines() As String = { "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()
      For Each line As String In lines
         Console.WriteLine(line)
      Next
      Console.WriteLine()
      
      ' Redefine the newline characters to double space.
      Console.Out.NewLine = vbCrLf + vbCrLf
      ' Output the lines using the new newline sequence.
      Console.WriteLine("With redefined new line characters:")
      Console.WriteLine()
      For Each line As String In lines
         Console.WriteLine(line)
      Next
   End Sub
End Module
' 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 中的换 vbCrLf 行符Visual Basic) 。 可以通过将 属性的 属性设置为另一个字符串 TextWriter.NewLine Out 来更改行终止符。 说明如示例所示。

另请参阅

适用于

WriteLine(String, Object, Object, Object)

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

public:
 static void WriteLine(System::String ^ format, System::Object ^ arg0, System::Object ^ arg1, System::Object ^ arg2);
public static void WriteLine (string format, object? arg0, object? arg1, object? arg2);
public static void WriteLine (string format, object arg0, object arg1, object arg2);
static member WriteLine : string * obj * obj * obj -> unit
Public Shared Sub WriteLine (format As String, arg0 As Object, arg1 As Object, arg2 As Object)

参数

format
String

复合格式字符串。

arg0
Object

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

arg1
Object

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

arg2
Object

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

例外

出现 I/O 错误。

formatnull

format 中的格式规范无效。

示例

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

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

using namespace System;

public enum class Color {Yellow = 1, Blue, Green};

int main() 
{
    DateTime thisDate = DateTime::Now;
    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

*/
// 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

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

open System

type Color = 
    | Yellow = 1
    | Blue = 2
    | Green = 3

let thisDate = DateTime.Now

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
' This code example demonstrates the Console.WriteLine() method.
' Formatting for this example uses the "en-US" culture.

Class Sample
   Public Enum Color
      Yellow = 1
      Blue = 2
      Green = 3
   End Enum 'Color
   Private Shared thisDate As DateTime = DateTime.Now
   
   Public Shared Sub 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}" & vbCrLf & _
                        "(D) Decimal:. . . . . . . . . {0:D}" & vbCrLf & _
                        "(E) Scientific: . . . . . . . {1:E}" & vbCrLf & _
                        "(F) Fixed point:. . . . . . . {1:F}" & vbCrLf & _
                        "(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(N) Number: . . . . . . . . . {0:N}" & vbCrLf & _
                        "(P) Percent:. . . . . . . . . {1:P}" & vbCrLf & _
                        "(R) Round-trip: . . . . . . . {1:R}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        - 123, - 123.45F)

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

      ' Format a Color enumeration value in various ways.
      Console.WriteLine("Standard Enumeration Format Specifiers")
      Console.WriteLine("(G) General:. . . . . . . . . {0:G}" & vbCrLf & _
                        "    (default):. . . . . . . . {0} (default = 'G')" & vbCrLf & _
                        "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)" & vbCrLf & _
                        "(D) Decimal number: . . . . . {0:D}" & vbCrLf & _
                        "(X) Hexadecimal:. . . . . . . {0:X}" & vbCrLf, _
                        Color.Green)
   End Sub
End Class
'
'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
'

下面的示例是一个 tip 计算器,它计算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
*/
open System

let tipRate = 0.18

let args = Environment.GetCommandLineArgs()[1..] 

if args.Length = 0 then 
    Console.WriteLine "usage: TIPCALC total"
else
    match Double.TryParse args[0] with
    | true, billTotal ->
        let 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}" 
    | _ ->
        Console.WriteLine "usage: TIPCALC total"

// >tipcalc 52.23
//
// Bill total:       $52.23
// Tip total/rate:    $9.40 (18.0 %)
// ------------------------
// Grand total:      $61.63
Public Module TipCalculator
    Private Const tipRate As Double = 0.18
   
    Public Sub Main(args As String())
        Dim billTotal As Double
        If (args.Length = 0) OrElse (Not Double.TryParse(args(0), billTotal)) Then
            Console.WriteLine("usage: TIPCALC total")
            Return
        End If

        Dim tip As Double = billTotal * tipRate
        Console.WriteLine()
        Console.WriteLine($"Bill total:{vbTab}{billTotal,8:c}")
        Console.WriteLine($"Tip total/rate:{vbTab}{tip,8:c} ({tipRate:p1})")
        Console.WriteLine("".PadRight(24, "-"c))
        Console.WriteLine($"Grand total:{vbTab}{billTotal + tip,8:c}")
    End Sub

End Module

'Example Output:
'---------------
' >tipcalc 52.23
' 
' Bill total:       $52.23
' Tip total/rate:    $9.40 (18.0 %)
' ------------------------
' Grand total:      $61.63

注解

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

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

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

.NET 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。

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

另请参阅

适用于

WriteLine(Object)

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

public:
 static void WriteLine(System::Object ^ value);
public static void WriteLine (object? value);
public static void WriteLine (object value);
static member WriteLine : obj -> unit
Public Shared Sub WriteLine (value As Object)

参数

value
Object

要写入的值。

例外

出现 I/O 错误。

示例

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

using namespace System;

void main()
{
   array<Object^>^ values = { true, 12.632, 17908, "stringValue",
                              'a', (Decimal) 16907.32 };
   for each (Object^ value in values)
      Console::WriteLine(value);
}
// The example displays the following output:
//    True
//    12.632
//    17908
//    stringValue
//    a
//    16907.32
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
let values: obj [] = 
    [| true; 12.632; 17908; "stringValue"; 'a'; 16907.32M |]

for value in values do
   Console.WriteLine value

// The example displays the following output:
//    True
//    12.632
//    17908
//    stringValue
//    a
//    16907.32
Module Example
   Public Sub Main()
      Dim values() As Object = { True, 12.632, 17908, "stringValue",
                                 "a"c, 16907.32d }
      For Each value In values
         Console.WriteLine(value)
      Next                           
   End Sub
End Module
' The example displays the following output:
'    True
'    12.632
'    17908
'    stringValue
'    a
'    16907.32

注解

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

有关行终止符详细信息,请参阅方法中不采用参数 WriteLine 的"备注"部分。

另请参阅

适用于

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

重要

此 API 不符合 CLS。

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

public:
 static void WriteLine(System::String ^ format, System::Object ^ arg0, System::Object ^ arg1, System::Object ^ arg2, System::Object ^ arg3);
[System.CLSCompliant(false)]
public static void WriteLine (string format, object arg0, object arg1, object arg2, object arg3);
[<System.CLSCompliant(false)>]
static member WriteLine : string * obj * obj * obj * obj -> unit
Public Shared Sub WriteLine (format As String, arg0 As Object, arg1 As Object, arg2 As Object, arg3 As Object)

参数

format
String

复合格式字符串。

arg0
Object

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

arg1
Object

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

arg2
Object

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

arg3
Object

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

属性

例外

出现 I/O 错误。

formatnull

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

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

.NET 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。

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

调用方说明

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

另请参阅

适用于