[C# 문법] C# StreamReader 클래스 파일 읽기
- C#/C# 문법
- 2021. 9. 5. 21:12
소개
- 안녕하세요. 오늘은 C# 문법에서 StreamReader 클래스를 이용하여 텍스트 파일을 읽는 방법에 대해서 알려 드리려고 합니다.
- 실무에서 프로젝트를 진행하다 보면, 텍스트 파일을 읽어와서 해당 데이터를 파싱해서 다루는 경우가 비일비재 한데요.
- 이럴때 매우 유용하게 사용할 수 있는 아주 기본적인 클래스 이므로 한번씩 사용해서 문법을 익히시는 것을 추천 드리도록 하겠습니다.
- 그럼 바로 예제 코드를 통해서 바탕화면에 저장되어 있는 test.txt 파일을 StreamReader 클래스를 이용하여 읽어 오는 예제 코드를 작성해 보도록 하겠습니다.
예제 코드
- 아래 예제 코드를 간단히 설명 드리도록 하겠습니다.
- 우선
File.Exists
라는 정적 메서드를 통해 파일의 존재 유무를 체크 하였습니다. - 파일이 존재한다면, 다음은 파일을 읽어야 합니다.
StreamReader
의 인스턴스를 생성하면 파일을 여는 처리도 함께 수행됩니다. - 파일의 경로와 문자 인코딩을 인수에 전달해서 파일을 엽니다.
- While 문 안에서는 텍스트를 한 행씩 읽어 들이면서 처리합니다.
- 파일의 마지막까지 읽어 들였는지를
EndOfStream
속성을 보고 판단합니다. - EndOfStream 이 false이면 아직 읽어 들일 행이 남은 것이므로 ReadLine 메서드로 한 행을 읽어 들여 그때의 텍스트 내용은 line 변수에 저장합니다.
using System;
using System.IO;
using System.Text;
namespace ConsoleApp7
{
static class Program
{
static void Main(string[] args)
{
var filePath = @"C:\Users\Desktop\test.txt";
// 파일 존재 유무 체크
if(File.Exists(filePath))
{
using(var reader = new StreamReader(filePath, Encoding.UTF8))
{
while(!reader.EndOfStream)
{
var line = reader.ReadLine();
Console.WriteLine($"{line}");
}
}
}
}
}
}
실제 test.txt 파일 내용
실행 결과
안녕하세요.
파일 테스트 진행중입니다.
저는 범범조조 입니다.
감사합니다.^^
- 위와 같이 실제 바탕화면에 저장되어 있는
text.txt
파일 내용과 StreamReader 클래스를 이용해서 읽어 들인 내용이 일치하는 것을 확인할 수 있습니다.
728x90
'C# > C# 문법' 카테고리의 다른 글
[C# 문법] C# 정규표현식 - 문자열 일치 여부 확인 (0) | 2021.09.11 |
---|---|
[C# 문법] C# 정규표현식 - 문자열 체크하기 (0) | 2021.09.10 |
[C# 문법] C# 요일 구하기 (0) | 2021.09.05 |
[C# 문법] C# 딕셔너리 키 중복 허용하기 (0) | 2021.09.05 |
[C# 문법] C# 폴더 시간 비교하기 (0) | 2021.09.02 |
이 글을 공유하기