>  기사  >  백엔드 개발  >  C# 스트링리더

C# 스트링리더

王林
王林원래의
2024-09-03 15:23:101052검색

C#의 StringReader 클래스는 TextReader 하위 클래스에서 파생되며 StringReader 클래스를 사용하여 문자열을 조작할 수 있습니다. 이 StringReader 클래스는 문자열을 사용하여 구축되며 문자열의 일부와 데이터를 읽기 위해 StringReader 클래스에서 Read 및 ReadLine 메서드를 제공합니다. StringReader 클래스가 읽는 데이터는 TextWriter 하위 클래스에서 파생된 StringWriter 클래스가 작성한 데이터이며 StringReader 클래스를 사용하여 동기 또는 비동기 방식으로 데이터를 읽을 수 있으며 읽기 작업은 존재하는 생성자와 메서드를 사용하여 수행됩니다. 이 수업에서.

구문:

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class StringReader : TextReader

C# StringReader의 작업 및 생성자

C#에서 StringReader 클래스의 작동 방식을 이해하려면 StringReader 클래스의 생성자와 StringReader 클래스의 메서드를 이해해야 합니다.

  • StringReader(string): StringReader 클래스의 새 인스턴스가 초기화되고 지정된 문자열에서 읽습니다.

C# StringReader 클래스의 메서드

StringReader 클래스에는 여러 가지 메소드가 있습니다. 다음과 같이 설명됩니다:

1. Close(): StringReader는 Close() 메서드를 사용하여 닫을 수 있습니다.

2. Dispose(): TextReader의 개체에서 사용하는 모든 리소스는 dispose() 메서드를 사용하여 해제할 수 있습니다.

3. Equals(Object): Equals(Object) 메서드는 지정된 개체가 현재 개체와 같은지 여부를 확인하는 데 사용됩니다.

4. Finalize(): 객체는 자신이 차지한 리소스를 해제하고 Finalize() 메서드를 사용하여 다른 정리 작업을 수행할 수 있습니다.

5. GetHashCode(): 기본적으로 GetHashCode() 메소드를 해시 함수로 사용할 수 있습니다.

6. GetType(): GetType() 메서드를 사용하여 현재 인스턴스의 유형을 얻을 수 있습니다.

7. Peek(): 사용 가능한 다음 문자는 Peek() 메서드를 사용하여 반환될 수 있으며 이 메서드는 사용 가능한 다음 문자를 사용하지 않습니다.

8. Read(): Read() 메서드를 사용하여 입력 문자열의 다음 문자를 읽을 수 있습니다.

9. ReadLine(): ReadLine() 메서드를 사용하면 현재 문자열에 있는 한 줄의 문자를 읽을 수 있습니다.

10. ReadLineAsync(): ReadLineAsync() 메서드를 사용하여 현재 문자열에 있는 문자 줄을 비동기적으로 읽을 수 있습니다.

11. ReadToEnd(): ReadToEnd() 메서드를 사용하면 문자열의 현재 위치부터 문자열의 끝 위치까지 문자열의 모든 문자를 읽을 수 있습니다.

12. ReadToEndAsync(): ReadToEndAsync() 메서드를 사용하면 문자열의 현재 위치부터 문자열의 끝 위치까지 문자열의 모든 문자를 비동기적으로 읽을 수 있습니다.

13. ToString(): ToString() 메소드를 사용하여 현재 객체를 나타내는 문자열을 반환합니다.

C# StringReader 구현 예

다음은 C# StringReader 클래스의 예입니다.

예시 #1

코드 :

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());
}
}
}
}

출력:

C# 스트링리더

위 프로그램에서는 프로그램이라는 네임스페이스가 선언되어 있습니다. 그런 다음 기본 메서드가 호출됩니다. 그런 다음 StringWriter 메서드의 인스턴스가 생성됩니다. 방금 생성된 StringWriter 클래스의 인스턴스를 사용하여 데이터를 씁니다. 여기에 작성된 데이터는 "Hello, Welcome to StringReader class"입니다. 그런 다음 StringWriter 클래스의 인스턴스는 Close() 메서드를 사용하여 닫힙니다. 그런 다음 StringWriter 클래스의 인스턴스가 매개 변수로 전달되는 StringReader 클래스의 인스턴스가 생성됩니다. StringWriter 클래스의 인스턴스를 사용하여 작성된 데이터를 StringReader 클래스의 인스턴스를 사용하여 읽고 동일한 내용이 출력에 표시됩니다.

예시 #2

StringReader 클래스의 ReadToEnd() 메서드 사용법을 보여주는 C# 프로그램

코드:

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);
}
}
}

출력:

C# 스트링리더

예시 #3

StringReader 클래스의 Read() 메소드 사용법을 보여주는 C# 프로그램

코드 :

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}");
}
}
}

출력:

C# 스트링리더

결론

이 튜토리얼에서는 정의, StringReader 클래스의 생성자, StringReader 클래스의 메서드를 통해 C#에서 StringReader 클래스의 개념을 이해하고, 프로그래밍 예제와 StringReader 클래스의 메서드를 보여주는 출력을 통해 StringReader 클래스의 작업을 이해합니다.

위 내용은 C# 스트링리더의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:C#의 TextReader다음 기사:C#의 TextReader