TextWriter 類別

定義

表示可以寫入循序數列字元的寫入器。 這個類別是抽象的。

public ref class TextWriter abstract : IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IAsyncDisposable, IDisposable
public abstract class TextWriter : IDisposable
[System.Serializable]
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextWriter : MarshalByRefObject, IDisposable
public abstract class TextWriter : MarshalByRefObject, IDisposable
public abstract class TextWriter : MarshalByRefObject, IAsyncDisposable, IDisposable
type TextWriter = class
    interface IDisposable
[<System.Serializable>]
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    interface IAsyncDisposable
    interface IDisposable
Public MustInherit Class TextWriter
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IAsyncDisposable, IDisposable
繼承
TextWriter
繼承
衍生
屬性
實作

範例

這個 TextWriter 類別是抽象類別。 因此,你不會在程式碼中實例化它。 該 StreamWriter 類別源自 TextWriter 並提供成員的實作,用於寫入串流。 以下範例展示了如何利用此 WriteLineAsync(String) 方法寫出兩行字串值到文字檔。

using System.IO;

namespace ConsoleApplication
{
    class Program4
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteLineAsync("First line of example");
                await writer.WriteLineAsync("and second line");
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteLineAsync("First line of example")
            Await writer.WriteLineAsync("and second line")
        End Using
    End Sub
End Module

備註

TextWriter是 和 StringWriterStreamWriter抽象基底類別,分別將字元寫入串流與字串。 使用 的 TextWriter 實例來將物件寫入字串、寫字串到檔案,或序列化 XML。 你也可以利用 的 TextWriter 實例,將文字寫入自訂的後備儲存庫,使用與字串或串流相同的 API,或加入對文字格式的支援。

所有 WriteTextWriter 原始資料型別作為參數的方法,都是以字串形式寫入這些值。

預設情況下,A TextWriter 並非執行緒安全。 請參考 TextWriter.Synchronized 有關線程安全包裝的資訊。

Important

此類型會實作 IDisposable 介面。 當你使用完任何源自該類型的類型後,應該直接或間接將其處理掉。 若要直接處置類型,請在 Disposetry/ 區塊中呼叫其 catch 方法。 若要間接處置它,請使用語言建構,例如 using (C#) 或 Using (在 Visual Basic 中)。 欲了解更多資訊,請參閱介面主題中的 IDisposable 「Dispose」及「使用實作 IDisposable 的物件」章節。

關於常見 I/O 任務的清單,請參見 Common I/O 任務

給實施者的注意事項

導出類別必須至少實作該Write(Char)方法,才能使 成為有用的實例。TextWriter

建構函式

名稱 Description
TextWriter()

初始化 TextWriter 類別的新執行個體。

TextWriter(IFormatProvider)

初始化一個新的類別實例 TextWriter ,使用指定的格式提供者。

欄位

名稱 Description
CoreNewLine

儲存用於此 TextWriter的換行字元。

Null

提供 TextWriter 一個沒有備份的儲存庫,可以寫入但無法讀取。

屬性

名稱 Description
Encoding

當在派生類別中被覆寫時,會回傳輸出所寫入的字元編碼。

FormatProvider

取得控制項格式設定的物件。

NewLine

取得或設定電流 TextWriter所使用的線路終止子串。

方法

名稱 Description
Close()

關閉目前的寫入者並釋放與該寫入者相關的系統資源。

CreateObjRef(Type)

建立一個物件,包含產生代理伺服器所需的所有相關資訊,用於與遠端物件通訊。

(繼承來源 MarshalByRefObject)
Dispose()

釋放物件所使用 TextWriter 的所有資源。

Dispose(Boolean)

釋放 未管理的資源, TextWriter 並可選擇性地釋放受管理資源。

DisposeAsync()

非同步釋放物件所使用 TextWriter 的所有資源。

Equals(Object)

判斷指定的 物件是否等於目前的物件。

(繼承來源 Object)
Flush()

清除目前寫入者的所有緩衝區,並使任何緩衝資料寫入底層裝置。

FlushAsync()

以異步方式清除目前寫入器的所有緩衝區,並導致任何緩衝的數據寫入基礎裝置。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetLifetimeService()

取得目前控制此實例生命週期政策的終身服務物件。

(繼承來源 MarshalByRefObject)
GetType()

取得目前實例的 Type

(繼承來源 Object)
InitializeLifetimeService()

取得一個終身服務物件以控制此實例的終身政策。

(繼承來源 MarshalByRefObject)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立一個 MarshalByRefObject 目前物件的淺層複製品。

(繼承來源 MarshalByRefObject)
Synchronized(TextWriter)

在指定的 TextWriter

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
Write(Boolean)

將某值的文字表示 Boolean 寫入文字串流。

Write(Char)

將字元寫入文字數據流。

Write(Char[], Int32, Int32)

將字元的子陣列寫入文字數據流。

Write(Char[])

將字元陣列寫入文字數據流。

Write(Decimal)

將十進位值的文字表示寫入文字數據流。

Write(Double)

將8位元組浮點值的文字表示寫入文字數據流。

Write(Int32)

將 4 位元組帶正負號整數的文字表示寫入文字數據流。

Write(Int64)

將8位元組帶正負號整數的文字表示寫入文字數據流。

Write(Object)

透過呼叫 ToString 該物件的方法,將物件的文字表示寫入該物件流。

Write(ReadOnlySpan<Char>)

將字元範圍寫入文字數據流。

Write(Single)

將 4 位元組浮點值的文字表示寫入文字數據流。

Write(String, Object, Object, Object)

會將格式化的字串寫入文字串流,使用與方法 Format(String, Object, Object, Object) 相同的語意。

Write(String, Object, Object)

會用與方法 Format(String, Object, Object) 相同的語意,將格式化的字串寫入文字串流。

Write(String, Object)

會將格式化的字串寫入文字串流,使用與方法 Format(String, Object) 相同的語意。

Write(String, Object[])

會將格式化的字串寫入文字串流,使用與方法 Format(String, Object[]) 相同的語意。

Write(String)

將字串寫入文字數據流。

Write(UInt32)

將 4 位元組無符號整數的文字表示寫入文字數據流。

Write(UInt64)

將8位元組無符號整數的文字表示寫入文字數據流。

WriteAsync(Char)

以異步方式將字元寫入文字數據流。

WriteAsync(Char[], Int32, Int32)

以異步方式將字元的子數位寫入文字數據流。

WriteAsync(Char[])

以異步方式將字元陣列寫入文字數據流。

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

以異步方式將字元記憶體區域寫入文字數據流。

WriteAsync(String)

以異步方式將字串寫入文字數據流。

WriteLine()

將行終止符寫入文字數據流。

WriteLine(Boolean)

將某個值的文字表示 Boolean 寫入文字串流,接著是行終止符。

WriteLine(Char)

將字元寫入文字數據流,後面接著行終止符。

WriteLine(Char[], Int32, Int32)

將字元的子陣列寫入文字數據流,後面接著行終止符。

WriteLine(Char[])

將字元陣列寫入文字數據流,後面接著行終止符。

WriteLine(Decimal)

將十進位值的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(Double)

將8位元組浮點值的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(Int32)

將 4 位元組帶正負號整數的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(Int64)

將8位元組帶正負號整數的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(Object)

透過呼叫 ToString 物件上的方法,接著行終止符,將物件的文字表示寫入文字串流。

WriteLine(ReadOnlySpan<Char>)

將字元範圍的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(Single)

將 4 位元組浮點值的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(String, Object, Object, Object)

寫出一個格式化字串和一行新行到文字串流,使用與 相同的語意。Format(String, Object)

WriteLine(String, Object, Object)

會將格式化字串和新行寫入文字串流,使用與方法 Format(String, Object, Object) 相同的語意。

WriteLine(String, Object)

會將格式化字串和新行寫入文字串流,使用與方法 Format(String, Object) 相同的語意。

WriteLine(String, Object[])

寫出一個格式化字串和一行新行到文字串流,使用與 相同的語意。Format(String, Object)

WriteLine(String)

將字串寫入文字數據流,後面接著行終止符。

WriteLine(UInt32)

將 4 位元組無符號整數的文字表示寫入文字數據流,後面接著行終止符。

WriteLine(UInt64)

將8位元組無符號整數的文字表示寫入文字數據流,後面接著行終止符。

WriteLineAsync()

以異步方式將行終止符寫入文字數據流。

WriteLineAsync(Char)

以異步方式將字元寫入文字數據流,後面接著行終止符。

WriteLineAsync(Char[], Int32, Int32)

以異步方式將字元的子陣列寫入文字數據流,後面接著行終止符。

WriteLineAsync(Char[])

以異步方式將字元陣列寫入文字數據流,後面接著行終止符。

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

以異步方式將字元記憶體區域的文字表示寫入文字數據流,後面接著行終止符。

WriteLineAsync(String)

以異步方式將字串寫入文字數據流,後面接著行終止符。

明確介面實作

名稱 Description
IDisposable.Dispose()

關於此成員的描述,請參見 Dispose()

擴充方法

名稱 Description
ConfigureAwait(IAsyncDisposable, Boolean)

設定如何執行從異步可處置專案傳回的工作等候。

適用於

另請參閱