Heim > Artikel > Backend-Entwicklung > C# StringReader
Die StringReader-Klasse in C# ist von der TextReader-Unterklasse abgeleitet und Zeichenfolgen können mit der StringReader-Klasse manipuliert werden. Diese StringReader-Klasse wird unter Verwendung einer Zeichenfolge erstellt und die Methoden „Read“ und „ReadLine“ werden von der StringReader-Klasse bereitgestellt, um die Teile der Zeichenfolge und die Daten zu lesen Die von der StringReader-Klasse gelesenen Daten sind die von der StringWriter-Klasse geschriebenen Daten, die von der TextWriter-Unterklasse abgeleitet sind. Die Daten können synchron oder asynchron mit der StringReader-Klasse gelesen werden, und die Lesevorgänge werden mithilfe der vorhandenen Konstruktoren und Methoden ausgeführt in dieser Klasse.
Syntax:
[SerializableAttribute] [ComVisibleAttribute(true)] public class StringReader : TextReader
Um die Funktionsweise der StringReader-Klasse in C# zu verstehen, müssen wir die Konstruktoren der StringReader-Klasse und die Methoden der StringReader-Klasse verstehen.
Es gibt mehrere Methoden der StringReader-Klasse. Sie werden wie folgt erklärt:
1. Close(): Der StringReader kann mit der Close()-Methode geschlossen werden.
2. Dispose(): Alle vom TextReader-Objekt verwendeten Ressourcen können mit der dispose()-Methode freigegeben werden.
3. Equals(Object): Die Methode „Equals(Object)“ wird verwendet, um zu bestimmen, ob das angegebene Objekt gleich dem aktuellen Objekt ist oder nicht.
4. Finalize(): Ein Objekt kann die von ihm selbst belegten Ressourcen freigeben und andere Bereinigungsvorgänge mithilfe der Finalize()-Methode durchführen.
5. GetHashCode(): Die GetHashCode()-Methode kann standardmäßig als Hash-Funktion verwendet werden.
6. GetType(): Der Typ der aktuellen Instanz kann mit der GetType()-Methode abgerufen werden.
7. Peek(): Das nächste verfügbare Zeichen kann mit der Peek()-Methode zurückgegeben werden und diese Methode verbraucht nicht das nächste verfügbare Zeichen.
8. Read(): Das nächste Zeichen aus der Eingabezeichenfolge kann mit der Read()-Methode gelesen werden.
9. ReadLine(): Eine in der aktuellen Zeichenfolge vorhandene Zeichenzeile kann mit der ReadLine()-Methode gelesen werden.
10. ReadLineAsync(): Eine in der aktuellen Zeichenfolge vorhandene Zeichenzeile kann mit der ReadLineAsync()-Methode asynchron gelesen werden.
11. ReadToEnd(): Alle Zeichen der Zeichenfolge können von der aktuellen Position der Zeichenfolge bis zur Endposition der Zeichenfolge mit der ReadToEnd()-Methode gelesen werden.
12. ReadToEndAsync(): Alle Zeichen der Zeichenfolge können asynchron von der aktuellen Position der Zeichenfolge bis zur Endposition der Zeichenfolge mit der Methode ReadToEndAsync() gelesen werden.
13. ToString(): Eine Zeichenfolge, die das aktuelle Objekt darstellt, wird mit der ToString()-Methode zurückgegeben.
Unten sind die Beispiele der C#-StringReader-Klasse:
Code:
using System; using System.IO; namespace Program { class Check { //calling the main method static void Main(string[] args) { //creating an instance of stringwriter method StringWriter strng = new StringWriter(); //writing data using stringwriter instance strng.WriteLine("Hello, welcome to StringReader class"); //closing the instance of stringwriter strng.Close(); // Creating an instance of stringreader to which the stringwriter instance is passed StringReader read = new StringReader(strng.ToString()); // data written using stringwriter is read using stringreader while (read.Peek() > -1) { Console.WriteLine(read.ReadLine()); } } } }
Ausgabe:
Im obigen Programm wird ein Namespace namens Programm deklariert. Dann wird die Hauptmethode aufgerufen. Anschließend wird eine Instanz der StringWriter-Methode erstellt. Mithilfe der gerade erstellten Instanz der StringWriter-Klasse werden Daten geschrieben. Hier lauten die geschriebenen Daten „Hallo, willkommen in der StringReader-Klasse.“ Anschließend wird die Instanz der StringWriter-Klasse mit der Methode Close() geschlossen. Anschließend wird eine Instanz der StringReader-Klasse erstellt, an die die Instanz der StringWriter-Klasse als Parameter übergeben wird. Die Daten, die mit der Instanz der StringWriter-Klasse geschrieben wurden, werden mit der Instanz der StringReader-Klasse gelesen und in der Ausgabe angezeigt.
C#-Programm zur Demonstration der Verwendung der ReadToEnd()-Methode der StringReader-Klasse.
Code:
using System; using System.IO; using System.Text; namespace Program { class Check { //calling the main method static void Main(string[] args) { //Creating an instance of StringBuilder class var readall = new StringBuilder(); //appending all the single statements into one through the instance of StringBuilder class readall.AppendLine("Welcome to StringReader class."); readall.AppendLine("Lets understand ReadToEnd() method."); readall.AppendLine("This method displays all the statements right from the beginning."); //creating an instance of StringReader class var read = new StringReader(readall.ToString()); //calling the ReadToEnd() method using the instance of StringReader class string tt = read.ReadToEnd(); Console.WriteLine(tt); } } }
Ausgabe:
C#-Programm zur Demonstration der Verwendung der Read()-Methode der StringReader-Klasse.
Code:
using System; using System.IO; namespace Program { class Check { //Calling the main method static void Main(string[] args) { //A string variable holding a string of characters is defined var tt = "Welcome to StringReader class."; //an instance of the stringreader class is created var read = new StringReader(tt); //a counter is declared and initialized to zero int count1 = 0; //the occurrence of the character to be identified from the statement is assigned to a character variable char ch = 'e'; //an integer variable is declared int x; //Read() method is called and checked if the control has not reached the end of the string or if the string do not exist while ((x = read.Read()) != -1) { char ct = (char) x; //if the character whose occurrence must be counted is same as the character in the statement while traversing through the statement, the counter is incremented by one if (ct.Equals(ch)) { count1++; } } //finally the number of occurrences of the specified character is displayed Console.WriteLine($"The number of '{ch}' characters in the given statement is {count1}"); } } }
Ausgabe:
In diesem Tutorial verstehen wir das Konzept der StringReader-Klasse in C# durch Definition, Konstruktoren der StringReader-Klasse und Methoden der StringReader-Klasse, die Funktionsweise der StringReader-Klasse anhand von Programmierbeispielen und deren Ausgaben, die die Methoden der StringReader-Klasse demonstrieren.
Das obige ist der detaillierte Inhalt vonC# StringReader. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!