StringWriter Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer.
public ref class StringWriter : System::IO::TextWriter
public class StringWriter : System.IO.TextWriter
[System.Serializable]
public class StringWriter : System.IO.TextWriter
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class StringWriter : System.IO.TextWriter
type StringWriter = class
inherit TextWriter
[<System.Serializable>]
type StringWriter = class
inherit TextWriter
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StringWriter = class
inherit TextWriter
Public Class StringWriter
Inherits TextWriter
- Öröklődés
- Öröklődés
- Attribútumok
Példák
Az alábbi példakód bemutatja egy folytonos bekezdés létrehozását két szóközzel elválasztott mondatokból, majd a bekezdés eredeti szöveggé alakítását.
using System;
using System.IO;
class StringRW
{
static void Main()
{
string textReaderText = "TextReader is the abstract base " +
"class of StreamReader and StringReader, which read " +
"characters from streams and strings, respectively.\n\n" +
"Create an instance of TextReader to open a text file " +
"for reading a specified range of characters, or to " +
"create a reader based on an existing stream.\n\n" +
"You can also use an instance of TextReader to read " +
"text from a custom backing store using the same " +
"APIs you would use for a string or a stream.\n\n";
Console.WriteLine("Original text:\n\n{0}", textReaderText);
// From textReaderText, create a continuous paragraph
// with two spaces between each sentence.
string aLine, aParagraph = null;
StringReader strReader = new StringReader(textReaderText);
while(true)
{
aLine = strReader.ReadLine();
if(aLine != null)
{
aParagraph = aParagraph + aLine + " ";
}
else
{
aParagraph = aParagraph + "\n";
break;
}
}
Console.WriteLine("Modified text:\n\n{0}", aParagraph);
// Re-create textReaderText from aParagraph.
int intCharacter;
char convertedCharacter;
StringWriter strWriter = new StringWriter();
strReader = new StringReader(aParagraph);
while(true)
{
intCharacter = strReader.Read();
// Check for the end of the string
// before converting to a character.
if(intCharacter == -1) break;
convertedCharacter = (char)intCharacter;
if(convertedCharacter == '.')
{
strWriter.Write(".\n\n");
// Bypass the spaces between sentences.
strReader.Read();
strReader.Read();
}
else
{
strWriter.Write(convertedCharacter);
}
}
Console.WriteLine("\nOriginal text:\n\n{0}",
strWriter.ToString());
}
}
Option Explicit
Option Strict
Imports System.IO
Public Class StrReader
Shared Sub Main()
Dim textReaderText As String = "TextReader is the " & _
"abstract base class of StreamReader and " & _
"StringReader, which read characters from streams " & _
"and strings, respectively." & _
vbCrLf & vbCrLf & _
"Create an instance of TextReader to open a text " & _
"file for reading a specified range of characters, " & _
"or to create a reader based on an existing stream." & _
vbCrLf & vbCrLf & _
"You can also use an instance of TextReader to read " & _
"text from a custom backing store using the same " & _
"APIs you would use for a string or a stream." & _
vbCrLf & vbCrLf
Console.WriteLine("Original text:" & vbCrLf & vbCrLf & _
textReaderText)
' From textReaderText, create a continuous paragraph
' with two spaces between each sentence.
Dim aLine, aParagraph As String
Dim strReader As New StringReader(textReaderText)
While True
aLine = strReader.ReadLine()
If aLine Is Nothing Then
aParagraph = aParagraph & vbCrLf
Exit While
Else
aParagraph = aParagraph & aLine & " "
End If
End While
Console.WriteLine("Modified text:" & vbCrLf & vbCrLf & _
aParagraph)
' Re-create textReaderText from aParagraph.
Dim intCharacter As Integer
Dim convertedCharacter As Char
Dim strWriter As New StringWriter()
strReader = New StringReader(aParagraph)
While True
intCharacter = strReader.Read()
' Check for the end of the string
' before converting to a character.
If intCharacter = -1 Then
Exit While
End If
convertedCharacter = Convert.ToChar(intCharacter)
If convertedCharacter = "."C Then
strWriter.Write("." & vbCrLf & vbCrLf)
' Bypass the spaces between sentences.
strReader.Read()
strReader.Read()
Else
strWriter.Write(convertedCharacter)
End If
End While
Console.WriteLine(vbCrLf & "Original text:" & vbCrLf & _
vbCrLf & strWriter.ToString())
End Sub
End Class
Megjegyzések
StringWriter lehetővé teszi a sztringek szinkron vagy aszinkron írását. Egyszerre írhat karaktert a metódussal vagy Write(Char) a WriteAsync(Char) metódussal, egy sztringet egy adott időpontban a vagy a Write(String)WriteAsync(String) metódus használatával. Emellett egy karaktert, egy karaktertömböt vagy egy sztringet is írhat, amelyet a sor terminátora követ aszinkron módon az WriteLineAsync egyik metódussal.
Note
Ez a típus implementálja az interfészt IDisposable , de valójában nincs elidegenítendő erőforrása. Ez azt jelenti, hogy a Dispose() közvetlen meghívásával vagy egy olyan nyelvi szerkezettel, mint például using (C#-ban) vagy Using (Visual Basic) nem szükséges.
Az alábbi táblázat más tipikus vagy kapcsolódó I/O-feladatokra mutat be példákat.
| Ehhez... | Tekintse meg a jelen témakörben szereplő példát... |
|---|---|
| Szövegfájl létrehozása. | Útmutató: Szöveg írása fájlba |
| Írás szövegfájlba. | Útmutató: Szöveg írása fájlba |
| Olvasás szövegfájlból. | Útmutató: Szöveg beolvasása fájlból |
| Szöveg hozzáfűzése egy fájlhoz. |
Útmutató: Naplófájl megnyitása és hozzáfűzése File.AppendText FileInfo.AppendText |
| Fájl méretének lekérése. | FileInfo.Length |
| A fájl attribútumainak lekérése. | File.GetAttributes |
| Adja meg egy fájl attribútumait. | File.SetAttributes |
| Állapítsa meg, hogy létezik-e fájl. | File.Exists |
| Olvasás bináris fájlból. | Útmutató: Olvasás és írás újonnan létrehozott adatfájlba |
| Írás bináris fájlba. | Útmutató: Olvasás és írás újonnan létrehozott adatfájlba |
Konstruktorok
| Name | Description |
|---|---|
| StringWriter() |
Inicializálja a StringWriter osztály új példányát. |
| StringWriter(IFormatProvider) |
Inicializálja az osztály új példányát StringWriter a megadott formátumvezérlővel. |
| StringWriter(StringBuilder, IFormatProvider) |
Inicializálja annak az osztálynak az StringWriter új példányát, amely a megadott StringBuilder formátumszolgáltatóval rendelkezik. |
| StringWriter(StringBuilder) |
Inicializálja a StringWriter megadott StringBuilderosztályba írandó osztály új példányát. |
Mezők
| Name | Description |
|---|---|
| CoreNewLine |
A az ehhez használt új vonalkarakterek |
Tulajdonságok
| Name | Description |
|---|---|
| Encoding |
Lekéri a Encoding kimenet írási értékét. |
| FormatProvider |
Lekéri a formázást vezérlő objektumot. (Öröklődés forrása TextWriter) |
| NewLine |
Lekéri vagy beállítja az aktuális |
Metódusok
| Name | Description |
|---|---|
| Close() |
Bezárja az aktuális StringWriter és a mögöttes streamet. |
| CreateObjRef(Type) |
Létrehoz egy objektumot, amely tartalmazza a távoli objektumokkal való kommunikációhoz használt proxy létrehozásához szükséges összes releváns információt. (Öröklődés forrása MarshalByRefObject) |
| Dispose() |
Felszabadítja az objektum által használt összes erőforrást TextWriter . (Öröklődés forrása TextWriter) |
| Dispose(Boolean) |
Felszabadítja a felügyelt erőforrások által StringWriter használt nem felügyelt erőforrásokat, és opcionálisan felszabadítja a felügyelt erőforrásokat. |
| DisposeAsync() |
Aszinkron módon felszabadítja az objektum által használt összes erőforrást TextWriter . (Öröklődés forrása TextWriter) |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| Flush() |
Törli az aktuális író összes pufferét, és a pufferelt adatokat a mögöttes eszközre írja. (Öröklődés forrása TextWriter) |
| FlushAsync() |
Aszinkron módon törli az aktuális író összes pufferét, és a pufferelt adatokat a mögöttes eszközre írja. |
| FlushAsync(CancellationToken) |
Aszinkron módon törli az aktuális író összes pufferét, és a pufferelt adatokat a mögöttes eszközre írja. (Öröklődés forrása TextWriter) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetLifetimeService() |
Elavult.
Lekéri a példány élettartamszabályzatát vezérlő aktuális élettartam-szolgáltatásobjektumot. (Öröklődés forrása MarshalByRefObject) |
| GetStringBuilder() |
A mögöttes StringBuilderértéket adja vissza. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| InitializeLifetimeService() |
Elavult.
Beolvas egy élettartam-szolgáltatásobjektumot a példány élettartam-szabályzatának szabályozásához. (Öröklődés forrása MarshalByRefObject) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| MemberwiseClone(Boolean) |
Az aktuális MarshalByRefObject objektum sekély másolatát hozza létre. (Öröklődés forrása MarshalByRefObject) |
| ToString() |
Az aktuálisra |
| Write(Boolean) |
Egy érték szöveges ábrázolását |
| Write(Char) |
Karaktert ír a sztringbe. |
| Write(Char[], Int32, Int32) |
Karakterek alarráit írja a sztringbe. |
| Write(Char[]) |
Karaktertömböt ír a szövegstreambe. (Öröklődés forrása TextWriter) |
| Write(Decimal) |
Decimális érték szöveges ábrázolását írja a szövegfolyamba. (Öröklődés forrása TextWriter) |
| Write(Double) |
Egy 8 bájtos lebegőpontos érték szöveges ábrázolását írja a szövegfolyamba. (Öröklődés forrása TextWriter) |
| Write(Int32) |
Egy 4 bájtos aláírt egész szám szöveges ábrázolását írja a szövegstreambe. (Öröklődés forrása TextWriter) |
| Write(Int64) |
Egy 8 bájtos aláírt egész szám szöveges ábrázolását írja a szövegstreambe. (Öröklődés forrása TextWriter) |
| Write(Object) |
Egy objektum szöveges ábrázolását írja a szövegstreambe az |
| Write(ReadOnlySpan<Char>) |
Egy karaktersorozat sztringképét írja az aktuális sztringre. |
| Write(Rune) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| Write(Single) |
Egy 4 bájtos lebegőpontos érték szöveges ábrázolását írja a szövegstreambe. (Öröklődés forrása TextWriter) |
| Write(String, Object, Object, Object) |
Formázott sztringet ír a szövegstreambe ugyanazzal a szemantikával, mint a Format(String, Object, Object, Object) metódus. (Öröklődés forrása TextWriter) |
| Write(String, Object, Object) |
Formázott sztringet ír a szövegfolyamba ugyanazzal a szemantikával, mint a Format(String, Object, Object) metódus. (Öröklődés forrása TextWriter) |
| Write(String, Object) |
Formázott sztringet ír a szövegstreambe ugyanazzal a szemantikával, mint a Format(String, Object) metódus. (Öröklődés forrása TextWriter) |
| Write(String, Object[]) |
Formázott sztringet ír a szövegstreambe ugyanazzal a szemantikával, mint a Format(String, Object[]) metódus. (Öröklődés forrása TextWriter) |
| Write(String, ReadOnlySpan<Object>) |
Formázott sztringet ír a szövegfolyamba ugyanazzal a szemantikával, mint Format(String, ReadOnlySpan<Object>)a . (Öröklődés forrása TextWriter) |
| Write(String) |
Sztringet ír az aktuális sztringre. |
| Write(StringBuilder) |
Egy sztringszerkesztő sztringképét írja az aktuális sztringre. |
| Write(UInt32) |
Egy 4 bájtos, aláíratlan egész szám szöveges ábrázolását írja a szövegstreambe. (Öröklődés forrása TextWriter) |
| Write(UInt64) |
Egy 8 bájtos, aláíratlan egész szám szöveges ábrázolását írja a szövegfolyamba. (Öröklődés forrása TextWriter) |
| WriteAsync(Char) |
Aszinkron módon ír egy karaktert a sztringbe. |
| WriteAsync(Char[], Int32, Int32) |
A karakterek alarráit aszinkron módon írja a sztringbe. |
| WriteAsync(Char[]) |
Karaktertömb írása aszinkron módon a szövegfolyamba. (Öröklődés forrása TextWriter) |
| WriteAsync(ReadOnlyMemory<Char>, CancellationToken) |
Aszinkron módon karakterek memóriaterületét írja a sztringbe. |
| WriteAsync(Rune) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteAsync(String, CancellationToken) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteAsync(String) |
Sztringet aszinkron módon ír az aktuális sztringre. |
| WriteAsync(StringBuilder, CancellationToken) |
Aszinkron módon írja a sztringszerkesztő szöveges ábrázolását a sztringbe. |
| WriteLine() |
Egy sorkiadót ír a szövegstreambe. (Öröklődés forrása TextWriter) |
| WriteLine(Boolean) |
Egy érték szöveges ábrázolását |
| WriteLine(Char) |
Karaktert ír a szövegfolyamba, majd egy sorkiválasztót. (Öröklődés forrása TextWriter) |
| WriteLine(Char[], Int32, Int32) |
A szövegfolyamba karakterek alarráit írja, amelyet egy sorkiválasztó követ. (Öröklődés forrása TextWriter) |
| WriteLine(Char[]) |
Egy karaktertömböt ír a szövegstreambe, amelyet egy sor terminátor követ. (Öröklődés forrása TextWriter) |
| WriteLine(Decimal) |
Egy decimális érték szöveges ábrázolását írja a szövegfolyamba, majd egy sorkiválasztót. (Öröklődés forrása TextWriter) |
| WriteLine(Double) |
Egy 8 bájtos lebegőpontos érték szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelölőt. (Öröklődés forrása TextWriter) |
| WriteLine(Int32) |
Egy 4 bájtos aláírt egész szám szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelölőt. (Öröklődés forrása TextWriter) |
| WriteLine(Int64) |
Egy 8 bájtos aláírt egész szám szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelölőt. (Öröklődés forrása TextWriter) |
| WriteLine(Object) |
Egy objektum szövegábrázolását írja a szövegstreambe a metódus meghívásával |
| WriteLine(ReadOnlySpan<Char>) |
A szöveges ábrázolás egy karaktersorozatot ír a sztringre, majd egy sorkijelezőt. |
| WriteLine(Rune) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteLine(Single) |
Egy 4 bájtos lebegőpontos érték szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelölőt. (Öröklődés forrása TextWriter) |
| WriteLine(String, Object, Object, Object) |
Formázott sztringet és egy új sort ír ki a szövegfolyamba ugyanazzal a szemantikával, mint Format(String, Object)a . (Öröklődés forrása TextWriter) |
| WriteLine(String, Object, Object) |
Formázott sztringet és egy új sort ír a szövegfolyamba ugyanazzal a szemantikával, mint a Format(String, Object, Object) metódus. (Öröklődés forrása TextWriter) |
| WriteLine(String, Object) |
Formázott sztringet és egy új sort ír a szövegfolyamba ugyanazzal a szemantikával, mint a Format(String, Object) metódus. (Öröklődés forrása TextWriter) |
| WriteLine(String, Object[]) |
Formázott sztringet és egy új sort ír ki a szövegfolyamba ugyanazzal a szemantikával, mint Format(String, Object)a . (Öröklődés forrása TextWriter) |
| WriteLine(String, ReadOnlySpan<Object>) |
Formázott sztringet és egy új sort ír ki a szövegfolyamba ugyanazzal a szemantikával, mint Format(String, ReadOnlySpan<Object>)a . (Öröklődés forrása TextWriter) |
| WriteLine(String) |
Sztringet ír a szövegfolyamba, majd egy sorkiválasztót. (Öröklődés forrása TextWriter) |
| WriteLine(StringBuilder) |
Egy sztringszerkesztő szövegábrázolását írja a sztringbe, majd egy sor terminátort. |
| WriteLine(UInt32) |
Egy 4 bájtos, aláíratlan egész szám szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelzőt. (Öröklődés forrása TextWriter) |
| WriteLine(UInt64) |
Egy 8 bájtból álló, aláíratlan egész szám szöveges ábrázolását írja a szövegfolyamba, majd egy sorkijelzőt. (Öröklődés forrása TextWriter) |
| WriteLineAsync() |
Aszinkron módon egy sor terminátort ír a szövegstreambe. (Öröklődés forrása TextWriter) |
| WriteLineAsync(CancellationToken) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteLineAsync(Char) |
Aszinkron módon egy karaktert ír a sztringbe, majd egy sor terminátort. |
| WriteLineAsync(Char[], Int32, Int32) |
aszinkron módon a karakterek egy részarráját írja a sztringbe, amelyet egy sor terminátor követ. |
| WriteLineAsync(Char[]) |
Aszinkron módon egy karaktertömböt ír a szövegstreambe, amelyet egy sorkiválasztó követ. (Öröklődés forrása TextWriter) |
| WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken) |
Aszinkron módon írja a karakterek memóriaterületének sztringképét az aktuális sztringre, majd egy sor terminátort. |
| WriteLineAsync(Rune) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteLineAsync(String, CancellationToken) |
Implementál egy TextWriter információt sztringbe való íráshoz. Az információkat egy mögöttes StringBuilderhelyen tárolja a rendszer. (Öröklődés forrása TextWriter) |
| WriteLineAsync(String) |
Aszinkron módon egy sztringet ír az aktuális sztringre, amelyet egy sor terminátor követ. |
| WriteLineAsync(StringBuilder, CancellationToken) |
Aszinkron módon írja a sztringszerkesztő sztringképét az aktuális sztringre, amelyet egy sor terminátor követ. |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Ennek a tagnak a leírását lásd Dispose(): . (Öröklődés forrása TextWriter) |
Bővítő metódusok
| Name | Description |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
Konfigurálja, hogy az aszinkron eldobható feladatok hogyan lesznek végrehajtva. |