특정 인코딩을 따르는 스트림으로 문자를 읽으려면 C#에서 StreamReader 클래스라는 클래스를 사용하고 StreamReader 클래스의 StreamWriter.Read() 메서드는 다음 문자 또는 다음 세트를 읽는 역할을 합니다. 스트림의 문자 수입니다. TextReader 클래스는 StreamReader 클래스의 기본 클래스로 StreamReader 클래스는 TextReader 클래스에서 상속되며 이 TextReader 클래스는 문자, 블록, 줄 등을 읽는 데 사용할 수 있는 여러 메서드를 제공하며 System.IO.namespace는 StreamReader가 정의된 네임스페이스이며 StreamReader 클래스는 Peak, Read, ReadAsync, ReadBlock, ReadBlockAsync, ReadLine, ReadLineAsync, ReadToEnd, ReadToEndAsync 등과 같은 여러 읽기 메서드를 제공합니다.
구문:
C#의 StreamReader 클래스 구문은 다음과 같습니다.
public class StreamReader: System.IO.TextReader
파일에서 데이터를 읽기 위해 StreamReader를 사용하는 방법을 설명하려면 아래 예를 고려하세요.
다음은 C# 스트림리더의 예시입니다
코드:
using System; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; //a namespace called program is defined namespace program { //a class called check is defined class check { //main method is called static void Main(string[] args) { //the path of the file and the file name is assigned to a string variable String def = @"D:\imp.txt"; //an instance of the string writer class is created, and the path of the file is passed as a parameter to append text to the file using (StreamWriter stwr = File.AppendText(def)) { //data to be appended to the file is included stwr.WriteLine("Welcome to StreamWriter class in C#"); //the instance of the streamwriter class is closed after writing data to the File stwr.Close(); try { // an instance of stream reader class is created, and data is read from the file by taking the path of the file as parameter using (StreamReader read = new StreamReader(def)) { //a string variable is defined string line1; // Data is being read one line after the other while ((line1 = read.ReadLine()) != null) { Console.WriteLine(line1); } } } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadKey(); } } } }
출력:
위 프로그램에서는 프로그램이 정의된 네임스페이스입니다. 그런 다음 정의된 클래스를 확인하세요. 그런 다음 기본 메서드가 호출됩니다. 그런 다음 문자열 변수에 파일 이름과 파일 경로가 할당되었습니다. 그런 다음 문자열 작성기 클래스 인스턴스가 생성되고 파일 경로가 매개 변수로 전달되어 파일에 텍스트를 씁니다. 그런 다음 파일에 쓸 데이터가 포함됩니다. 그런 다음 파일에 데이터를 쓴 후 스트림 기록기 클래스 인스턴스가 닫힙니다. 그런 다음 스트림 리더 클래스의 인스턴스가 생성되고 파일 경로를 매개 변수로 사용하여 파일에서 데이터를 읽습니다. 그런 다음 문자열 변수가 정의됩니다. 그런 다음 데이터가 한 줄씩 읽혀집니다. 프로그램의 출력은 위의 스냅샷과 같습니다.
StreamReader 클래스 사용법을 설명하는 C# 프로그램:
코드:
using System; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; //a class called check is defined class check { //main method is called static void Main() { String fin = @"D:\Ex.txt" //an instance of streamwriter class is created and the path of the file is passed as a parameter using (StreamWriter stwf = new StreamWriter(fin)) { //write() method of stream writer class is used to write the first line so that the next line continues from here stwf.Write("Welcome to StreamWriter class in C# and "); //writeline() method is used to write the second line and the next line starts from a new line stwf.WriteLine("this program is demonstration of StreamWriter class in C# "); //writeline() method is used to write the third line and the next line starts from a new line stwf.WriteLine("I hope you are learning "); stwf.Dispose(); try { // an instance of stream reader class is created, and data is read from the file by taking the path of the file as parameter using (StreamReader read = new StreamReader(fin)) { //a string variable is defined string line1; // Data is being read one line after the other while ((line1 = read.ReadLine()) != null) { Console.WriteLine(line1); } } } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadKey(); } } }
출력:
위 프로그램에서는 프로그램이 정의된 네임스페이스입니다. 그런 다음 정의된 클래스를 확인하세요. 그런 다음 기본 메서드가 호출됩니다. 그런 다음 문자열 변수에 파일 이름과 파일 경로가 할당되었습니다. 그런 다음 문자열 작성기 클래스 인스턴스가 생성되고 파일 경로가 매개 변수로 전달되어 파일에 텍스트를 씁니다. 그런 다음 스트림 라이터 클래스의 write() 메서드를 사용하여 여기에서 다음 줄이 계속되도록 첫 번째 줄을 작성합니다. 그런 다음 writeline() 메서드를 사용하여 두 번째 줄을 쓰고 다음 줄은 새 줄에서 시작됩니다. 그런 다음 writeline() 메서드를 사용하여 세 번째 줄을 쓰고 다음 줄은 새 줄에서 시작됩니다. 그런 다음 스트림 리더 클래스의 인스턴스가 생성되고 파일 경로를 매개 변수로 사용하여 파일에서 데이터를 읽습니다. 그런 다음 문자열 변수가 정의됩니다. 그런 다음 데이터는 라인 끝까지 한 라인씩 읽혀집니다. 프로그램의 출력은 위의 스냅샷과 같습니다.
위 내용은 C# 스트림리더의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!