Console.Write 方法

定义

将指定值的文本表示形式写入标准输出流。Writes the text representation of the specified value or values to the standard output stream.

重载

Write(String, Object, Object, Object, Object)

使用指定的格式信息将指定的对象和可变长度参数列表的文本表示形式写入标准输出流。Writes the text representation of the specified objects and variable-length parameter list to the standard output stream using the specified format information.

Write(String, Object, Object, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified objects to the standard output stream using the specified format information.

Write(String, Object, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified objects to the standard output stream using the specified format information.

Write(String, Object[])

使用指定的格式信息将指定的对象数组的文本表示形式写入标准输出流。Writes the text representation of the specified array of objects to the standard output stream using the specified format information.

Write(String, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified object to the standard output stream using the specified format information.

Write(UInt64)

将指定的 64 位无符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 64-bit unsigned integer value to the standard output stream.

Write(UInt32)

将指定的 32 位无符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 32-bit unsigned integer value to the standard output stream.

Write(String)

将指定的字符串值写入标准输出流。Writes the specified string value to the standard output stream.

Write(Char[], Int32, Int32)

将指定的 Unicode 字符子数组写入标准输出流。Writes the specified subarray of Unicode characters to the standard output stream.

Write(Object)

将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified object to the standard output stream.

Write(Single)

将指定的单精度浮点值的文本表示形式写入标准输出流。Writes the text representation of the specified single-precision floating-point value to the standard output stream.

Write(Char)

将指定的 Unicode 字符值写入标准输出流。Writes the specified Unicode character value to the standard output stream.

Write(Char[])

将指定的 Unicode 字符数组写入标准输出流。Writes the specified array of Unicode characters to the standard output stream.

Write(Boolean)

将指定的布尔值的文本表示形式写入标准输出流。Writes the text representation of the specified Boolean value to the standard output stream.

Write(Double)

将指定的双精度浮点值的文本表示形式写入标准输出流。Writes the text representation of the specified double-precision floating-point value to the standard output stream.

Write(Int32)

将指定的 32 位有符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 32-bit signed integer value to the standard output stream.

Write(Int64)

将指定的 64 位有符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 64-bit signed integer value to the standard output stream.

Write(Decimal)

将指定的 Decimal 值的文本表示形式写入标准输出流。Writes the text representation of the specified Decimal value to the standard output stream.

Write(String, Object, Object, Object, Object)

重要

此 API 不符合 CLS。

使用指定的格式信息将指定的对象和可变长度参数列表的文本表示形式写入标准输出流。Writes the text representation of the specified objects and variable-length parameter list to the standard output stream using the specified format information.

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

参数

format
String

复合格式字符串。A composite format string.

arg0
Object

要使用 format 写入的第一个对象。The first object to write using format.

arg1
Object

要使用 format 写入的第二个对象。The second object to write using format.

arg2
Object

要使用 format 写入的第三个对象。The third object to write using format.

arg3
Object

要使用 format 写入的第四个对象。The fourth object to write using format.

属性

异常

出现 I/O 错误。An I/O error occurred.

formatnullformat is null.

format 中的格式规范无效。The format specification in format is invalid.

示例

下面的示例演示如何将变量参数与 Write(String, Object, Object, Object, Object) 方法一起使用。The following example illustrates the use of variable parameters with the Write(String, Object, Object, Object, Object) method. 使用复合格式字符串和五个格式项调用方法。The method is called with a composite format string and five format items.

using namespace System;

//void main(array<System::String ^> ^args)
void main()
{
   DateTime dateRecorded(2009, 6, 15);
   DateTime startTime(1, 1, 1, 0, 30, 0);
   TimeSpan interval(12, 0, 0);

   Double temperature1 = 52.8;
   Double temperature2 = 63.5;
   
   Console::Write("Date: {0:d}:\n   Temperature at {1:t}: {2}\n   Temperature at {3:t}: {4}\n", 
                  dateRecorded, startTime, temperature1, 
                  startTime.Add(interval), temperature2);
    Console::ReadLine();
}
// The example displays the following output:
//      Date: 6/15/2009:
//         Temperature at 12:30 AM: 52.8
//         Temperature at 12:30 PM: 63.5

注解

备注

此 API 不兼容 CLS。This API is not CLS-compliant. 符合 CLS 的替代方法是 Console.Write(String, Object[])The CLS-compliant alternative is Console.Write(String, Object[]). C#和 Visual Basic 编译器会自动将对此方法的调用解析为对 Console.Write(String, Object[])的调用。The C# and Visual Basic compilers automatically resolve a call to this method as a call to Console.Write(String, Object[]).

此方法使用 .NET Framework 的复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串。This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. 生成的字符串将写入输出流。The resulting string is written to the output stream.

format 参数包含与零个或多个索引占位符(称为格式项)混合的零个或多个文本的运行,这些占位符与此方法的参数列表中的对象相对应。The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. 格式设置过程将每个格式项替换为相应对象的值的文本表示形式。The formatting process replaces each format item with the text representation of the value of the corresponding object.

格式项的语法是 {索引[,对齐] [:格式值]},它指定了必需索引、格式化文本的可选长度和对齐方式,以及控制如何设置相应对象的值的格式的可选字符串。The syntax of a format item is {index[,alignment][:formatString]}, which specifies a mandatory index, the optional length and alignment of the formatted text, and an optional string of format specifier characters that govern how the value of the corresponding object is formatted.

.NET Framework 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics.

调用方说明

此方法使用 vararg 关键字进行标记,这意味着它支持数量可变的参数。This method is marked with the vararg keyword, which means that it supports a variable number of parameters. 方法可以从视觉对象C++调用,但是不能从或 Visual Basic 代码C#中调用。The method can be called from Visual C++, but it cannot be called from C# or Visual Basic code. C#和 Visual Basic 编译器将对 Write(String, Object, Object, Object, Object) 的调用解析为对 Write(String, Object[])的调用。The C# and Visual Basic compilers resolve calls to Write(String, Object, Object, Object, Object) as calls to Write(String, Object[]).

另请参阅

Write(String, Object, Object, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified objects to the standard output stream using the specified format information.

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

参数

format
String

复合格式字符串。A composite format string.

arg0
Object

要使用 format 写入的第一个对象。The first object to write using format.

arg1
Object

要使用 format 写入的第二个对象。The second object to write using format.

arg2
Object

要使用 format 写入的第三个对象。The third object to write using format.

异常

出现 I/O 错误。An I/O error occurred.

formatnullformat is null.

format 中的格式规范无效。The format specification in format is invalid.

示例

下面的示例使用 WriteLine 方法演示数字、日期和枚举的标准格式说明符。The following example uses the WriteLine method to demonstrate the standard formatting specifiers for numbers, dates, and enumerations.

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

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
'

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

此方法使用 .NET Framework 的复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串。This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. 生成的字符串将写入输出流。The resulting string is written to the output stream.

format 参数包含与零个或多个索引占位符(称为格式项)混合的零个或多个文本的运行,这些占位符与此方法的参数列表中的对象相对应。The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. 格式设置过程将每个格式项替换为相应对象的值的文本表示形式。The formatting process replaces each format item with the text representation of the value of the corresponding object.

格式项的语法是 {索引[,对齐] [:格式值]},它指定了必需索引、格式化文本的可选长度和对齐方式,以及控制如何设置相应对象的值的格式的可选字符串。The syntax of a format item is {index[,alignment][:formatString]}, which specifies a mandatory index, the optional length and alignment of the formatted text, and an optional string of format specifier characters that govern how the value of the corresponding object is formatted.

.NET Framework 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics.

另请参阅

Write(String, Object, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified objects to the standard output stream using the specified format information.

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

参数

format
String

复合格式字符串。A composite format string.

arg0
Object

要使用 format 写入的第一个对象。The first object to write using format.

arg1
Object

要使用 format 写入的第二个对象。The second object to write using format.

异常

出现 I/O 错误。An I/O error occurred.

formatnullformat is null.

format 中的格式规范无效。The format specification in format is invalid.

示例

下面的示例使用 WriteLine 方法演示数字、日期和枚举的标准格式说明符。The following example uses the WriteLine method to demonstrate the standard formatting specifiers for numbers, dates, and enumerations.

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

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
'

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

此方法使用 .NET Framework 的复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串。This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. 生成的字符串将写入输出流。The resulting string is written to the output stream.

format 参数包含与零个或多个索引占位符(称为格式项)混合的零个或多个文本的运行,这些占位符与此方法的参数列表中的对象相对应。The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. 格式设置过程将每个格式项替换为相应对象的值的文本表示形式。The formatting process replaces each format item with the text representation of the value of the corresponding object.

格式项的语法是 {索引[,对齐] [:格式值]},它指定了必需索引、格式化文本的可选长度和对齐方式,以及控制如何设置相应对象的值的格式的可选字符串。The syntax of a format item is {index[,alignment][:formatString]}, which specifies a mandatory index, the optional length and alignment of the formatted text, and an optional string of format specifier characters that govern how the value of the corresponding object is formatted.

.NET Framework 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics.

另请参阅

Write(String, Object[])

使用指定的格式信息将指定的对象数组的文本表示形式写入标准输出流。Writes the text representation of the specified array of objects to the standard output stream using the specified format information.

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

参数

format
String

复合格式字符串。A composite format string.

arg
Object[]

要使用 format 写入的对象的数组。An array of objects to write using format.

异常

出现 I/O 错误。An I/O error occurred.

formatargnullformat or arg is null.

format 中的格式规范无效。The format specification in format is invalid.

示例

下面的示例定义了一个具有多个属性的 Person 类,这些属性提供有关用户的信息。The following example defines a Person class with a number of properties that provide information about a person. 它的 GetDescription 方法返回数组,该数组包含除一个属性值之外的所有属性值。Its GetDescription method returns an array that contains all of the property values except one. 然后,该示例使用 GetDescription 方法返回的数组来显示 Person 对象的值。The example then uses the array returned by the GetDescription method to display the values of the Person object.

using System;

public class Person
{
   public String Name { get; set; }
   public DateTime BirthDate  { get; set; }
   public Double Height { get; set; }
   public Double Weight { get; set; }
   public Char Gender { get; set; }
   public String Remarks { get; set; }
   
   public object[] GetDescription() 
   {
      return new object[] { Name, Gender, Height, Weight, BirthDate};
   }
}

public class Example
{
   public static void Main()
   {
      var p1 = new Person() { Name = "John", Gender = 'M',
                              BirthDate = new DateTime(1992, 5, 10), 
                              Height = 73.5, Weight = 207 };
      p1.Remarks = "Client since 1/3/2012";
      Console.Write("{0}: {1}, born {4:d}  Height {2} inches, Weight {3} lbs  ", 
                    p1.GetDescription());
      if (String.IsNullOrEmpty(p1.Remarks))
         Console.WriteLine();
      else
         Console.WriteLine("{1}Remarks: {0}", p1.Remarks,
                           Console.CursorLeft + p1.Remarks.Length + 10 > Console.WindowWidth ?
                              "\n   " : "");
   }
}
// The example displays the following output:
//    John: M, born 5/10/1992  Height 73.5 inches, Weight 207 lbs  Remarks: Client since 1/3/2012
Public Class Person
   Public Property Name As String
   Public Property BirthDate As DateTime
   Public Property Height As Double
   Public Property Weight As Double
   Public Property Gender As Char
   Public Property Remarks As String
   
   Public Function GetDescription() As Object()
      Return { Name, Gender, Height, Weight, BirthDate}
   End Function
End Class

Module Example
   Public Sub Main()
      Dim p1 As New Person() With { .Name = "John", .Gender = "M"c,
                                    .BirthDate = New DateTime(1992, 5, 10), 
                                    .Height = 73.5, .Weight = 207 }
      p1.Remarks = "Client since 1/3/2012"
      Console.Write("{0}: {1}, born {4:d}  Height {2} inches, Weight {3} lbs  ", 
                    p1.GetDescription())
      If String.IsNullOrEmpty(p1.Remarks) Then
         Console.WriteLine()
      Else
         Console.WriteLine("{1}Remarks: {0}", p1.Remarks,
                           If(Console.CursorLeft + p1.Remarks.Length + 10 > Console.WindowWidth,
                              vbCrLf + "   ", ""))
      End If   
   End Sub
End Module
' The example displays the following output:
'   John: M, born 5/10/1992  Height 73.5 inches, Weight 207 lbs  Remarks: Client since 1/3/2012

请注意,该示例调用 Write(String, Object[]) 方法,而不是 WriteLine(String, Object[]) 方法,因为它会尝试在同一行上显示 Person.Remarks 属性的值。Note that the example calls the Write(String, Object[]) method rather than the WriteLine(String, Object[]) method because it attempts to display the value of the Person.Remarks property on the same line. 为此,它将检查 CursorLeft 的值并 WindowWidth 属性,以确定是否有足够的空间来容纳注释。To do this, it examines the value of the CursorLeft and WindowWidth properties to determine whether there is enough space for the remark to fit. 如果存在,则会显示该行。If there is, it displays the line. 如果不是,它将写入一行,缩进三个空格,并显示注释。If not, it writes a line, indents three spaces, and displays the remark.

下面的示例与第一个示例相同,只不过它提供五项列表作为 arg 参数,而不是参数数组。The following example is identical to the first, except that it supplies a five-item list as the arg argument instead of a parameter array.

using System;

public class Person
{
   public String Name { get; set; }
   public DateTime BirthDate  { get; set; }
   public Double Height { get; set; }
   public Double Weight { get; set; }
   public Char Gender { get; set; }
   public String Remarks { get; set; }
   
   public object[] GetDescription() 
   {
      return new object[] { Name, Gender, Height, Weight, BirthDate};
   }
}

public class Example
{
   public static void Main()
   {
      var p1 = new Person() { Name = "John", Gender = 'M',
                              BirthDate = new DateTime(1992, 5, 10), 
                              Height = 73.5, Weight = 207 };
      p1.Remarks = "Client since 1/3/2012";
      Console.Write("{0}: {1}, born {2:d}  Height {3} inches, Weight {4} lbs  ", 
                    p1.Name, p1.Gender, p1.BirthDate, p1.Height, p1.Weight);
      if (String.IsNullOrEmpty(p1.Remarks))
         Console.WriteLine();
      else
         Console.WriteLine("{1}Remarks: {0}", p1.Remarks,
                           Console.CursorLeft + p1.Remarks.Length + 10 > Console.WindowWidth ?
                              "\n   " : "");
   }
}
// The example displays the following output:
//    John: M, born 5/10/1992  Height 73.5 inches, Weight 207 lbs  Remarks: Client since 1/3/2012
Public Class Person
   Public Property Name As String
   Public Property BirthDate As DateTime
   Public Property Height As Double
   Public Property Weight As Double
   Public Property Gender As Char
   Public Property Remarks As String
   
   Public Function GetDescription() As Object()
      Return { Name, Gender, Height, Weight, BirthDate}
   End Function
End Class

Module Example
   Public Sub Main()
      Dim p1 As New Person() With { .Name = "John", .Gender = "M"c,
                                    .BirthDate = New DateTime(1992, 5, 10), 
                                    .Height = 73.5, .Weight = 207 }
      p1.Remarks = "Client since 1/3/2012"
      Console.Write("{0}: {1}, born {2:d}  Height {3} inches, Weight {4} lbs  ", 
                    p1.Name, p1.Gender, p1.BirthDate, p1.Height, p1.Weight)
      If String.IsNullOrEmpty(p1.Remarks) Then
         Console.WriteLine()
      Else
         Console.WriteLine("{1}Remarks: {0}", p1.Remarks,
                           If(Console.CursorLeft + p1.Remarks.Length + 10 > Console.WindowWidth,
                              vbCrLf + "   ", ""))
      End If   
   End Sub
End Module
' The example displays the following output:
'   John: M, born 5/10/1992  Height 73.5 inches, Weight 207 lbs  Remarks: Client since 1/3/2012

注解

此方法使用 .NET Framework 的复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串。This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. 生成的字符串将写入输出流。The resulting string is written to the output stream.

format 参数包含与零个或多个索引占位符(称为格式项)混合的零个或多个文本的运行,这些占位符与此方法的参数列表中的对象相对应。The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. 格式设置过程将每个格式项替换为相应对象的值的文本表示形式。The formatting process replaces each format item with the text representation of the value of the corresponding object.

格式项的语法是 {索引[,对齐] [:格式值]},它指定了必需索引、格式化文本的可选长度和对齐方式,以及控制如何设置相应对象的值的格式的可选字符串。The syntax of a format item is {index[,alignment][:formatString]}, which specifies a mandatory index, the optional length and alignment of the formatted text, and an optional string of format specifier characters that govern how the value of the corresponding object is formatted.

.NET Framework 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics.

arg 参数是参数数组。The arg parameter is a parameter array. 参数可以作为数组或五个或更多项的列表传递给方法。Arguments can be passed to the method either as an array or as list of five or more items. 这些示例演示了两种形式的方法调用。The examples illustrate both forms of method call.

调用方说明

C++代码不会调用此方法。This method is not called by C++ code. C++编译器解析对system.object的调用,其中包含一个字符串和四个或更多对象参数的列表作为对 Write(String, Object, Object, Object, Object)的调用。The C++ compiler resolves calls to System.Console.Write that include a string and a list of four or more object parameters as a call to Write(String, Object, Object, Object, Object). 它解析对将字符串和对象数组作为对 Write(String, Object)的调用的对system.object的调用。It resolves calls to System.Console.Write that include a string and an object array as a call to Write(String, Object).

另请参阅

Write(String, Object)

使用指定的格式信息将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified object to the standard output stream using the specified format information.

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

参数

format
String

复合格式字符串。A composite format string.

arg0
Object

要使用 format 写入的对象。An object to write using format.

异常

出现 I/O 错误。An I/O error occurred.

formatnullformat is null.

format 中的格式规范无效。The format specification in format is invalid.

示例

下面的示例使用 WriteLine 方法演示数字、日期和枚举的标准格式说明符。The following example uses the WriteLine method to demonstrate the standard formatting specifiers for numbers, dates, and enumerations.

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

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
'

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

此方法使用 .NET Framework 的复合格式设置功能将对象的值转换为其文本表示形式,并将该表示形式嵌入字符串。This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. 生成的字符串将写入输出流。The resulting string is written to the output stream.

format 参数包含与零个或多个索引占位符(称为格式项)混合的零个或多个文本的运行,这些占位符与此方法的参数列表中的对象相对应。The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. 格式设置过程将每个格式项替换为相应对象的值的文本表示形式。The formatting process replaces each format item with the text representation of the value of the corresponding object.

格式项的语法是 {索引[,对齐] [:格式值]},它指定了必需索引、格式化文本的可选长度和对齐方式,以及控制如何设置相应对象的值的格式的可选字符串。The syntax of a format item is {index[,alignment][:formatString]}, which specifies a mandatory index, the optional length and alignment of the formatted text, and an optional string of format specifier characters that govern how the value of the corresponding object is formatted.

.NET Framework 提供了广泛的格式支持,以下格式设置主题更详细地介绍了这一支持。The .NET Framework provides extensive formatting support, which is described in greater detail in the following formatting topics.

另请参阅

Write(UInt64)

重要

此 API 不符合 CLS。

将指定的 64 位无符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 64-bit unsigned integer value to the standard output stream.

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

参数

value
UInt64

要写入的值。The value to write.

属性

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 UInt64.ToString 方法生成的。The text representation of value is produced by calling the UInt64.ToString method.

另请参阅

Write(UInt32)

重要

此 API 不符合 CLS。

将指定的 32 位无符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 32-bit unsigned integer value to the standard output stream.

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

参数

value
UInt32

要写入的值。The value to write.

属性

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 UInt32.ToString 方法生成的。The text representation of value is produced by calling the UInt32.ToString method.

另请参阅

Write(String)

将指定的字符串值写入标准输出流。Writes the specified string value to the standard output stream.

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

参数

value
String

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

如果值为 null,则不会向标准输出流写入任何内容。If value is null, nothing is written to the standard output stream.

另请参阅

Write(Char[], Int32, Int32)

将指定的 Unicode 字符子数组写入标准输出流。Writes the specified subarray of Unicode characters to the standard output stream.

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

参数

buffer
Char[]

Unicode 字符的数组。An array of Unicode characters.

index
Int32

buffer 中的起始位置。The starting position in buffer.

count
Int32

要写入的字符数。The number of characters to write.

异常

buffernullbuffer is null.

indexcount 小于零。index or count is less than zero.

indexcount 指定不在 buffer 内的位置。index plus count specify a position that is not within buffer.

出现 I/O 错误。An I/O error occurred.

注解

此方法将从 buffer 位置 index 开始 count 字符写入标准输出流。This method writes count characters starting at position index of buffer to the standard output stream.

另请参阅

Write(Object)

将指定对象的文本表示形式写入标准输出流。Writes the text representation of the specified object to the standard output stream.

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

参数

value
Object

要写入的值,或者为 nullThe value to write, or null.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

如果 null``value,则不会写入任何内容,也不会引发异常。If value is null, nothing is written and no exception is thrown. 否则,将调用 valueToString 方法来生成字符串表示形式,并将生成的字符串写入标准输出流。Otherwise, the ToString method of value is called to produce its string representation, and the resulting string is written to the standard output stream.

另请参阅

Write(Single)

将指定的单精度浮点值的文本表示形式写入标准输出流。Writes the text representation of the specified single-precision floating-point value to the standard output stream.

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

参数

value
Single

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Single.ToString 方法生成的。The text representation of value is produced by calling the Single.ToString method.

另请参阅

Write(Char)

将指定的 Unicode 字符值写入标准输出流。Writes the specified Unicode character value to the standard output stream.

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

参数

value
Char

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

另请参阅

Write(Char[])

将指定的 Unicode 字符数组写入标准输出流。Writes the specified array of Unicode characters to the standard output stream.

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

参数

buffer
Char[]

Unicode 字符数组。A Unicode character array.

异常

出现 I/O 错误。An I/O error occurred.

另请参阅

Write(Boolean)

将指定的布尔值的文本表示形式写入标准输出流。Writes the text representation of the specified Boolean value to the standard output stream.

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

参数

value
Boolean

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Boolean.ToString生成的,后者将输出 Boolean.TrueStringBoolean.FalseStringThe text representation of value is produced by calling Boolean.ToString, which outputs either Boolean.TrueString or Boolean.FalseString.

另请参阅

Write(Double)

将指定的双精度浮点值的文本表示形式写入标准输出流。Writes the text representation of the specified double-precision floating-point value to the standard output stream.

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

参数

value
Double

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Double.ToString 方法生成的。The text representation of value is produced by calling the Double.ToString method.

另请参阅

Write(Int32)

将指定的 32 位有符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 32-bit signed integer value to the standard output stream.

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

参数

value
Int32

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Int32.ToString 方法生成的。The text representation of value is produced by calling the Int32.ToString method.

另请参阅

Write(Int64)

将指定的 64 位有符号整数值的文本表示写入标准输出流。Writes the text representation of the specified 64-bit signed integer value to the standard output stream.

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

参数

value
Int64

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Int64.ToString 方法生成的。The text representation of value is produced by calling the Int64.ToString method.

另请参阅

Write(Decimal)

将指定的 Decimal 值的文本表示形式写入标准输出流。Writes the text representation of the specified Decimal value to the standard output stream.

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

参数

value
Decimal

要写入的值。The value to write.

异常

出现 I/O 错误。An I/O error occurred.

示例

下面的示例演示 Write 方法的用法。The following example illustrates the use of the Write method.

int main()
{
   array<String^>^lineInputArr = {"1   2.2   hello	TRUE","2   5.22   bye	FALSE","3   6.38   see ya'	TRUE"};
   for ( Int32 i = 0; i < 3; i++ )
   {
      String^ lineInput = lineInputArr->GetValue( i )->ToString();
      String^ aChar =  "\t";
      array<String^>^fields = lineInput->Split( aChar->ToCharArray() );
      Boolean isFirstField = true;
      for ( Int32 i = 0; i < fields->Length; i++ )
      {
         if ( isFirstField )
                  isFirstField = false;
         else
                  Console::Write( "," );
         
         // If the field represents a boolean, replace with a numeric representation.
         try
         {
            Console::Write( Convert::ToByte( Convert::ToBoolean( fields[ i ] ) ) );
         }
         catch ( FormatException^ ) 
         {
            Console::Write( fields[ i ] );
         }


      }
      Console::WriteLine();

   }
}

public class FormatConverter
{
    public static void Main(string[] args)
    {
        string lineInput;
        while ((lineInput = Console.ReadLine()) != null)
        {
            string[] fields = lineInput.Split(new char[] {'\t'});
            bool isFirstField = true;
            foreach (var item in fields)
            {
                if (isFirstField)
                    isFirstField = false;
                else
                    Console.Write(',');
                
                // If the field represents a boolean, replace with a numeric representation.
                bool itemBool;
                if (Boolean.TryParse(item, out itemBool))
                    Console.Write(Convert.ToByte(itemBool));
                else
                    Console.Write(item);
            }
            Console.WriteLine();
        }
    }
}
Public Class FormatConverter
   Public Shared Sub Main()
      Dim lineInput As String = Console.ReadLine()
      While Not lineInput Is Nothing
         Dim fields As String() = lineInput.Split(ControlChars.Tab)
         Dim isFirstField As Boolean = True
         For Each item As String In fields
            If isFirstField Then
               isFirstField = False
            Else
               Console.Write(",")
            End If
            ' If the field represents a boolean, replace with a numeric representation.
            Dim itemBool As Boolean
            If Boolean.TryParse(item, itemBool)
                Console.Write(Convert.ToByte(itemBool))
            Else
                Console.Write(item)
            End If
         Next
         Console.WriteLine()
         lineInput = Console.ReadLine()
      End While
   End Sub
End Class 

注解

value 的文本表示形式是通过调用 Decimal.ToString生成的。The text representation of value is produced by calling Decimal.ToString.

另请参阅

适用于