StringReader Klasa

Definicja

Implementuje element TextReader odczytujący z ciągu.

public ref class StringReader : System::IO::TextReader
public class StringReader : System.IO.TextReader
[System.Serializable]
public class StringReader : System.IO.TextReader
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class StringReader : System.IO.TextReader
type StringReader = class
    inherit TextReader
[<System.Serializable>]
type StringReader = class
    inherit TextReader
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StringReader = class
    inherit TextReader
Public Class StringReader
Inherits TextReader
Dziedziczenie
StringReader
Dziedziczenie
Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak odczytywać cały ciąg asynchronicznie.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            ReadCharacters();
        }

        static async void ReadCharacters()
        {
            StringBuilder stringToRead = new StringBuilder();
            stringToRead.AppendLine("Characters in 1st line to read");
            stringToRead.AppendLine("and 2nd line");
            stringToRead.AppendLine("and the end");

            using (StringReader reader = new StringReader(stringToRead.ToString()))
            {
                string readText = await reader.ReadToEndAsync();
                Console.WriteLine(readText);
            }
        }
    }
}
// The example displays the following output:
//
// Characters in 1st line to read
// and 2nd line
// and the end
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        ReadCharacters()
    End Sub

    Async Sub ReadCharacters()
        Dim stringToRead = New StringBuilder()
        stringToRead.AppendLine("Characters in 1st line to read")
        stringToRead.AppendLine("and 2nd line")
        stringToRead.AppendLine("and the end")

        Using reader As StringReader = New StringReader(stringToRead.ToString())
            Dim readText As String = Await reader.ReadToEndAsync()
            Console.WriteLine(readText)
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in 1st line to read
' and 2nd line
' and the end
'

Uwagi

StringReader umożliwia synchronicznie lub asynchronicznie odczytywanie ciągu. Znak można odczytać jednocześnie za Read pomocą metody lub ReadAsync , wiersza w czasie przy użyciu metody lub ReadLine i całego ciągu przy użyciu ReadLineAsyncReadToEnd metody lub .ReadToEndAsync

Note

Ten typ implementuje IDisposable interfejs, ale w rzeczywistości nie ma żadnych zasobów do usunięcia. Oznacza to, że usuwanie go przez bezpośrednie wywołanie Dispose() lub przy użyciu konstrukcji językowej, takiej jak using (w języku C#) lub Using (w Visual Basic) nie jest konieczne.

W poniższej tabeli wymieniono przykłady innych typowych lub powiązanych zadań we/wy.

Aby to zrobić... Zobacz przykład w tym temacie...
Utwórz plik tekstowy. Instrukcje: zapisywanie tekstu w pliku
Zapisywanie w pliku tekstowym. Instrukcje: zapisywanie tekstu w pliku
Odczyt z pliku tekstowego. Instrukcje: odczytywanie tekstu z pliku
Dołączanie tekstu do pliku. Instrukcje: otwieranie i dołączanie do pliku dziennika

File.AppendText

FileInfo.AppendText
Pobierz rozmiar pliku. FileInfo.Length
Pobierz atrybuty pliku. File.GetAttributes
Ustaw atrybuty pliku. File.SetAttributes
Ustal, czy plik istnieje. File.Exists
Odczyt z pliku binarnego. Instrukcje: odczytywanie i zapisywanie w nowo utworzonym pliku danych
Zapisywanie w pliku binarnym. Instrukcje: odczytywanie i zapisywanie w nowo utworzonym pliku danych

Konstruktory

Nazwa Opis
StringReader(String)

Inicjuje nowe wystąpienie StringReader klasy, która odczytuje z określonego ciągu.

Metody

Nazwa Opis
Close()

Zamyka element StringReader.

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 TextReader obiekt.

(Odziedziczone po TextReader)
Dispose(Boolean)

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

Equals(Object)

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

(Odziedziczone po Object)
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 MarshalByRefObject obiektu.

(Odziedziczone po MarshalByRefObject)
Peek()

Zwraca następny dostępny znak, ale nie używa go.

Read()

Odczytuje następny znak z ciągu wejściowego i rozwija położenie znaku o jeden znak.

Read(Char[], Int32, Int32)

Odczytuje blok znaków z ciągu wejściowego i rozwija położenie znaku przez count.

Read(Span<Char>)

Odczytuje wszystkie znaki z ciągu wejściowego, zaczynając od bieżącej pozycji, i przechodzi bieżącą pozycję na końcu ciągu wejściowego.

ReadAsync(Char[], Int32, Int32)

Odczytuje określoną maksymalną liczbę znaków z bieżącego ciągu asynchronicznie i zapisuje dane w buforze, zaczynając od określonego indeksu.

ReadAsync(Memory<Char>, CancellationToken)

Asynchronicznie odczytuje wszystkie znaki z ciągu wejściowego, zaczynając od bieżącego położenia, i przesuwa bieżącą pozycję na końcu ciągu wejściowego.

ReadBlock(Char[], Int32, Int32)

Odczytuje określoną maksymalną liczbę znaków z bieżącego czytnika tekstu i zapisuje dane w buforze, zaczynając od określonego indeksu.

(Odziedziczone po TextReader)
ReadBlock(Span<Char>)

Odczytuje wszystkie znaki z ciągu wejściowego rozpoczynającego się od bieżącej pozycji i przechodzi bieżącą pozycję na końcu ciągu wejściowego.

ReadBlockAsync(Char[], Int32, Int32)

Odczytuje określoną maksymalną liczbę znaków z bieżącego ciągu asynchronicznie i zapisuje dane w buforze, zaczynając od określonego indeksu.

ReadBlockAsync(Memory<Char>, CancellationToken)

Asynchronicznie odczytuje wszystkie znaki z ciągu wejściowego rozpoczynającego się od bieżącej pozycji i przechodzi bieżącą pozycję na końcu ciągu wejściowego.

ReadLine()

Odczytuje wiersz znaków z bieżącego ciągu i zwraca dane jako ciąg.

ReadLineAsync()

Odczytuje wiersz znaków asynchronicznie z bieżącego ciągu i zwraca dane jako ciąg.

ReadLineAsync(CancellationToken)

Odczytuje wiersz znaków asynchronicznie z bieżącego ciągu i zwraca dane jako ciąg.

ReadToEnd()

Odczytuje wszystkie znaki z bieżącego położenia na końcu ciągu i zwraca je jako pojedynczy ciąg.

ReadToEndAsync()

Odczytuje wszystkie znaki z bieżącego położenia na końcu ciągu asynchronicznie i zwraca je jako pojedynczy ciąg.

ReadToEndAsync(CancellationToken)

Odczytuje wszystkie znaki z bieżącego położenia na końcu ciągu asynchronicznie i zwraca je jako pojedynczy ciąg.

ToString()

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

(Odziedziczone po Object)

Jawne implementacje interfejsu

Nazwa Opis
IDisposable.Dispose()

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

(Odziedziczone po TextReader)

Dotyczy

Zobacz też