Udostępnij za pośrednictwem


TextWriter Klasa

Definicja

Reprezentuje składnik zapisywania, który może napisać sekwencyjną serię znaków. Ta klasa jest abstrakcyjna.

public ref class TextWriter abstract : IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IAsyncDisposable, IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IDisposable
public abstract class TextWriter : IDisposable
public abstract class TextWriter : MarshalByRefObject, IAsyncDisposable, IDisposable
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextWriter : MarshalByRefObject, IDisposable
type TextWriter = class
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    interface IAsyncDisposable
    interface IDisposable
type TextWriter = class
    inherit MarshalByRefObject
    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
Public MustInherit Class TextWriter
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IAsyncDisposable, IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IDisposable
Dziedziczenie
TextWriter
Dziedziczenie
Pochodne
Atrybuty
Implementuje

Przykłady

Klasa TextWriter jest abstrakcyjną klasą. W związku z tym nie tworzy się ich w kodzie. Klasa StreamWriter pochodzi z TextWriter i udostępnia implementacje składowych do zapisu w strumieniu. W poniższym przykładzie pokazano, jak napisać dwa wiersze składające się z wartości ciągu do pliku tekstowego przy użyciu metody 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

Uwagi

TextWriter jest abstrakcyjną klasą bazową StreamWriter i StringWriter, która zapisuje znaki w strumieniach i ciągach, odpowiednio. Użyj wystąpienia TextWriter, aby zapisać obiekt w ciągu, zapisać ciągi w pliku lub serializować kod XML. Możesz również użyć wystąpienia TextWriter do zapisania tekstu w niestandardowym magazynie pomocniczym przy użyciu tych samych interfejsów API, których można użyć dla ciągu lub strumienia, albo dodać obsługę formatowania tekstu.

Wszystkie metody WriteTextWriter o typach danych pierwotnych jako parametry zapisują wartości jako ciągi.

Domyślnie TextWriter nie jest bezpieczny wątkiem. Zobacz TextWriter.Synchronized, aby zapoznać się z otoką bezpieczną wątkowo.

Ważny

Ten typ implementuje interfejs IDisposable. Po zakończeniu korzystania z dowolnego typu pochodzącego z tego typu należy usunąć go bezpośrednio lub pośrednio. Aby usunąć typ bezpośrednio, wywołaj metodę Dispose w bloku try/catch. Aby usunąć go pośrednio, należy użyć konstrukcji języka, takiej jak using (w języku C#) lub Using (w Visual Basic). Aby uzyskać więcej informacji, zobacz sekcję Dispose i sekcję "Using an Object that Implements IDisposable" (Używanie obiektu implementujące interfejs IDisposable) w temacie IDisposable interface (Interfejs IDisposable).

Aby uzyskać listę typowych zadań we/wy, zobacz Typowe zadania we/wy.

Uwagi dotyczące implementowania

Klasa pochodna musi minimalnie zaimplementować metodę Write(Char), aby przydatne wystąpienie TextWriter.

Konstruktory

TextWriter()

Inicjuje nowe wystąpienie klasy TextWriter.

TextWriter(IFormatProvider)

Inicjuje nowe wystąpienie klasy TextWriter przy użyciu określonego dostawcy formatu.

Pola

CoreNewLine

Przechowuje znaki nowego wiersza używane w tym TextWriter.

Null

Udostępnia TextWriter bez magazynu zapasowego, do którego można zapisywać dane, ale nie odczytuje z.

Właściwości

Encoding

Po przesłonięciu w klasie pochodnej zwraca kodowanie znaków, w którym są zapisywane dane wyjściowe.

FormatProvider

Pobiera obiekt, który kontroluje formatowanie.

NewLine

Pobiera lub ustawia ciąg terminatora wiersza używany przez bieżący TextWriter.

Metody

Close()

Zamyka bieżący moduł zapisywania i zwalnia wszystkie zasoby systemowe skojarzone z modułem zapisywania.

CreateBroadcasting(TextWriter[])

Tworzy wystąpienie TextWriter, które zapisuje dostarczone dane wejściowe do każdego z składników zapisywania w writers.

CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
Dispose()

Zwalnia wszystkie zasoby używane przez obiekt TextWriter.

Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez TextWriter i opcjonalnie zwalnia zarządzane zasoby.

DisposeAsync()

Asynchronicznie zwalnia wszystkie zasoby używane przez obiekt TextWriter.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
Flush()

Czyści wszystkie dla bieżącego modułu zapisywania i powoduje zapisanie wszystkich buforowanych danych na urządzeniu bazowym.

FlushAsync()

Asynchronicznie czyści wszystkie dla bieżącego składnika zapisywania i powoduje zapisanie wszystkich buforowanych danych na urządzeniu bazowym.

FlushAsync(CancellationToken)

Asynchronicznie czyści wszystkie dla bieżącego składnika zapisywania i powoduje zapisanie wszystkich buforowanych danych na urządzeniu bazowym.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia w celu kontrolowania zasad okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego obiektu MarshalByRefObject.

(Odziedziczone po MarshalByRefObject)
Synchronized(TextWriter)

Tworzy bezpieczną wątkowo otokę wokół określonego TextWriter.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
Write(Boolean)

Zapisuje tekstową reprezentację Boolean wartości w strumieniu tekstowym.

Write(Char)

Zapisuje znak w strumieniu tekstowym.

Write(Char[])

Zapisuje tablicę znaków w strumieniu tekstowym.

Write(Char[], Int32, Int32)

Zapisuje podarraj znaków w strumieniu tekstowym.

Write(Decimal)

Zapisuje tekstową reprezentację wartości dziesiętnej w strumieniu tekstowym.

Write(Double)

Zapisuje tekstową reprezentację 8-bajtowej wartości zmiennoprzecinkowej do strumienia tekstowego.

Write(Int32)

Zapisuje reprezentację tekstu z 4-bajtową liczbą całkowitą ze znakiem do strumienia tekstowego.

Write(Int64)

Zapisuje tekstową reprezentację 8-bajtowej liczby całkowitej ze znakiem do strumienia tekstu.

Write(Object)

Zapisuje tekstową reprezentację obiektu w strumieniu tekstowym, wywołując metodę ToString dla tego obiektu.

Write(ReadOnlySpan<Char>)

Zapisuje zakres znaków w strumieniu tekstowym.

Write(Single)

Zapisuje reprezentację tekstu wartości zmiennoprzecinkowej 4-bajtowej na strumień tekstowy.

Write(String)

Zapisuje ciąg w strumieniu tekstowym.

Write(String, Object)

Zapisuje sformatowany ciąg w strumieniu tekstowym przy użyciu tej samej semantyki co metoda Format(String, Object).

Write(String, Object, Object)

Zapisuje sformatowany ciąg w strumieniu tekstowym przy użyciu tej samej semantyki co metoda Format(String, Object, Object).

Write(String, Object, Object, Object)

Zapisuje sformatowany ciąg w strumieniu tekstowym przy użyciu tej samej semantyki co metoda Format(String, Object, Object, Object).

Write(String, Object[])

Zapisuje sformatowany ciąg w strumieniu tekstowym przy użyciu tej samej semantyki co metoda Format(String, Object[]).

Write(String, ReadOnlySpan<Object>)

Zapisuje sformatowany ciąg w strumieniu tekstowym przy użyciu tej samej semantyki co Format(String, ReadOnlySpan<Object>).

Write(StringBuilder)

Zapisuje konstruktora ciągów w strumieniu tekstowym.

Write(UInt32)

Zapisuje reprezentację tekstu 4-bajtowej liczby całkowitej bez znaku do strumienia tekstowego.

Write(UInt64)

Zapisuje reprezentację tekstu 8-bajtowej liczby całkowitej bez znaku do strumienia tekstowego.

WriteAsync(Char)

Zapisuje znak w strumieniu tekstu asynchronicznie.

WriteAsync(Char[])

Zapisuje tablicę znaków w strumieniu tekstowym asynchronicznie.

WriteAsync(Char[], Int32, Int32)

Zapisuje podarraj znaków w strumieniu tekstowym asynchronicznie.

WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronicznie zapisuje region pamięci znaków w strumieniu tekstowym.

WriteAsync(String)

Zapisuje ciąg w strumieniu tekstowym asynchronicznie.

WriteAsync(StringBuilder, CancellationToken)

Asynchronicznie zapisuje konstruktora ciągów w strumieniu tekstowym.

WriteLine()

Zapisuje terminator wiersza w strumieniu tekstowym.

WriteLine(Boolean)

Zapisuje tekstową reprezentację wartości Boolean w strumieniu tekstowym, a następnie terminator wiersza.

WriteLine(Char)

Zapisuje znak do strumienia tekstu, po którym następuje terminator wiersza.

WriteLine(Char[])

Zapisuje tablicę znaków w strumieniu tekstowym, po której następuje terminator wiersza.

WriteLine(Char[], Int32, Int32)

Zapisuje podarraj znaków do strumienia tekstowego, a następnie terminator wiersza.

WriteLine(Decimal)

Zapisuje tekstową reprezentację wartości dziesiętnej w strumieniu tekstowym, a następnie terminator wiersza.

WriteLine(Double)

Zapisuje tekstową reprezentację wartości zmiennoprzecinkowej 8-bajtowej na strumień tekstowy, a następnie terminator wiersza.

WriteLine(Int32)

Zapisuje tekstową reprezentację 4-bajtowej liczby całkowitej ze znakiem do strumienia tekstowego, a następnie terminator wiersza.

WriteLine(Int64)

Zapisuje tekstową reprezentację liczby całkowitej ze znakiem 8 bajtów w strumieniu tekstowym, a następnie terminator wiersza.

WriteLine(Object)

Zapisuje reprezentację tekstu obiektu w strumieniu tekstowym, wywołując metodę ToString dla tego obiektu, a następnie terminator wiersza.

WriteLine(ReadOnlySpan<Char>)

Zapisuje tekstową reprezentację zakresu znaków w strumieniu tekstowym, po którym następuje terminator wiersza.

WriteLine(Single)

Zapisuje tekstową reprezentację wartości zmiennoprzecinkowej 4-bajtowej na strumień tekstowy, a następnie terminator wiersza.

WriteLine(String)

Zapisuje ciąg w strumieniu tekstowym, po którym następuje terminator wiersza.

WriteLine(String, Object)

Zapisuje sformatowany ciąg i nowy wiersz do strumienia tekstu przy użyciu tej samej semantyki co metoda Format(String, Object).

WriteLine(String, Object, Object)

Zapisuje sformatowany ciąg i nowy wiersz do strumienia tekstu przy użyciu tej samej semantyki co metoda Format(String, Object, Object).

WriteLine(String, Object, Object, Object)

Zapisuje sformatowany ciąg i nowy wiersz do strumienia tekstu przy użyciu tej samej semantyki co Format(String, Object).

WriteLine(String, Object[])

Zapisuje sformatowany ciąg i nowy wiersz do strumienia tekstu przy użyciu tej samej semantyki co Format(String, Object).

WriteLine(String, ReadOnlySpan<Object>)

Zapisuje sformatowany ciąg i nowy wiersz do strumienia tekstu przy użyciu tej samej semantyki co Format(String, ReadOnlySpan<Object>).

WriteLine(StringBuilder)

Zapisuje tekstową reprezentację konstruktora ciągów w strumieniu tekstowym, a następnie terminator wiersza.

WriteLine(UInt32)

Zapisuje reprezentację tekstu 4-bajtowej liczby całkowitej bez znaku do strumienia tekstowego, a następnie terminator wiersza.

WriteLine(UInt64)

Zapisuje reprezentację tekstu 8-bajtowej liczby całkowitej bez znaku do strumienia tekstowego, a następnie terminator wiersza.

WriteLineAsync()

Asynchronicznie zapisuje terminator wiersza w strumieniu tekstowym.

WriteLineAsync(Char)

Asynchronicznie zapisuje znak w strumieniu tekstowym, po którym następuje terminator wiersza.

WriteLineAsync(Char[])

Asynchronicznie zapisuje tablicę znaków w strumieniu tekstowym, a następnie terminator wiersza.

WriteLineAsync(Char[], Int32, Int32)

Asynchronicznie zapisuje podarraj znaków w strumieniu tekstowym, a następnie terminator wiersza.

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronicznie zapisuje tekstową reprezentację regionu pamięci znaków w strumieniu tekstowym, a następnie terminator wiersza.

WriteLineAsync(String)

Asynchronicznie zapisuje ciąg w strumieniu tekstowym, po którym następuje terminator wiersza.

WriteLineAsync(StringBuilder, CancellationToken)

Asynchronicznie zapisuje tekstową reprezentację konstruktora ciągów w strumieniu tekstowym, a następnie terminator wiersza.

Jawne implementacje interfejsu

IDisposable.Dispose()

Aby uzyskać opis tego elementu członkowskiego, zobacz Dispose().

Metody rozszerzania

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguruje, w jaki sposób będą wykonywane oczekiwania na zadania zwrócone z asynchronicznego jednorazowego użytku.

Dotyczy

Zobacz też