C# TEXT 파일 한줄씩 읽기
StreamReader SR = new StreamReader("writeTest.txt"); //읽어들일 TXT 파일의 경로를
//매개변수로 StreamReader 생성
string line; //한 줄씩 읽은 후, 그 값을 저장시킬 변수
string result = ""; //전체 라인을 저장시킬 변수
while ((line = SR.ReadLine()) != null) //line변수에 SR에서 한줄을 읽은 걸 저장, 읽은 줄이 null이 아닐때까지 반복
{
result += line; //전체 라인 변수에 그 값을 저장
result += "\r\n"; //표출을 위해서 추가
}
textBox1.Text = result; //예제 textbox폼에 전체 읽은 문구를 표출
SR.Close(); //StreamReader를 닫아줌
|
C# TEXT 파일 전체 읽기
StreamReader SR = new StreamReader("writeTest.txt"); //읽어들일 TXT 파일의 경로를
//매개변수로 StreamReader 생성
string result = ""; //읽은 TXT파일을 저장시킬 변수
result = SR.ReadToEnd(); //처음부터 끝까지 읽은 후 저장
textBox1.Text = result; //예제 textbox폼에 전체 읽은 문구를 표출
SR.Close(); //StreamReader를 닫아줌
|
저번 C# TEXT FILE 쓰기 포스팅 이후 파일 입출력 관련 2번째 포스팅 입니다.
TEXT FILE Write 관련 글은 하단 포스팅을 참고 부탁드립니다.
[C#]C# txt 쓰기 / C# text 쓰기 / C# 텍스트 파일 쓰기
C# TXT 파일을 읽는 여러 방법중
1. 1줄씩 읽어 들이는 방법
2. 전체를 읽는 방법
두가지에 대해 예제와 결과를 통해 설명드리겠습니다.
폼 디자인
C# 파일 읽기 전체 소스 코드
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO; //추가
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace my_notepad
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
StreamWriter writer;
writer = File.CreateText("writeTest.txt");
writer.WriteLine("텍스트 파일 새로 쓰기 성공");
}
private void button2_Click(object sender, EventArgs e)
{
StreamWriter writer;
writer = File.AppendText("writeTest.txt");
writer.WriteLine("텍스트 파일 이어 쓰기 성공");
}
private void button3_Click(object sender, EventArgs e)
{
StreamReader SR = new StreamReader("writeTest.txt"); //읽어들일 TXT 파일의 경로를
//매개변수로 StreamReader 생성
string line; //한 줄씩 읽은 후, 그 값을 저장시킬 변수
string result = ""; //전체 라인을 저장시킬 변수
while ((line = SR.ReadLine()) != null) //line변수에 SR에서 한줄을 읽은 걸 저장, 읽은 줄이 null이 아닐때까지 반복
{
result += line; //전체 라인 변수에 그 값을 저장
result += "\r\n"; //표출을 위해서 추가
}
textBox1.Text = result; //textbox폼에 전체 읽은 문구를 표출
SR.Close(); //StreamReader를 닫아줌
}
private void button4_Click(object sender, EventArgs e)
{
StreamReader SR = new StreamReader("writeTest.txt"); //읽어들일 TXT 파일의 경로를
//매개변수로 StreamReader 생성
string result = ""; //읽은 TXT파일을 저장시킬 변수
result = SR.ReadToEnd(); //처음부터 끝까지 읽은 후 저장
textBox1.Text = result; //textbox폼에 전체 읽은 문구를 표출
SR.Close(); //StreamReader를 닫아줌
}
}
}
|
위에서 말씀드린 2가지 케이스의 가장 큰 차이점은
StreamReader에서 모든 라인을 읽고 반환을 해주느냐
아니면 한 라인씩 읽으면서 반환을 해주느냐 입니다.
상황에 따라 다르겠지만 저는 한 라인씩 읽는 것을 많이 사용합니다.
전체 텍스트를 라인씩 읽어들이면서, 필요한 정보를 얻고 나면
break로 해당 루프를 빠져나오는 식으로 많이 사용하며,
ReadToEnd() 전체 TEXT를 가져왔다고 해도 내가 필요한 정보만 빼내려면 또 파싱을 해야 하기 때문이죠.
테스트에 사용할 텍스트(TXT) 파일의 내용과 경로
C# TEXT FILE 한줄씩 읽기 실행결과
C# TEXT FILE 전체 읽기 실행결과
예제 자체가 전체 라인을 읽는 것이기 때문에 결과는 동일합니다.
마지막으로 C# 파일 읽기 프로젝트 전체 압축하여 첨부합니다.
다음 포스팅에서는 Open, Save dialogue를 통해서
실제 메모장 처럼 TEXT 파일을 읽고 쓰는 것에 대해 포스팅 할 예정입니다.
>_<
'IT프로그래밍' 카테고리의 다른 글
[Python]파이썬 주석 / Python 주석 / 파이썬 한줄 주석 / 파이썬 여러줄 주석 (0) | 2020.04.05 |
---|---|
[Python]파이썬 출력 / 파이썬 print / Python 출력 / Python print (0) | 2020.04.05 |
[Python]파이참 설치 / PyCharm 설치 / 파이썬 IDE / 파이썬 에디터 (0) | 2020.04.03 |
[Python]파이썬 설치 / 파이선 설치 / Python 설치 - 설치에서 예제실행까지 - (0) | 2020.04.03 |
[MSSQL]MSSQL Order by / SQL Order by / SQL 정렬 (0) | 2020.04.02 |
[C#]C# txt 쓰기 / C# text 쓰기 / C# 텍스트 파일 쓰기 (0) | 2020.04.02 |
[MSSQL]MSSQL delete from / SQL delete from / SQL 삭제 문 (0) | 2020.04.02 |
[MSSQL]MSSQL Insert into/ SQL Insert into / SQL 삽입 (0) | 2020.04.01 |
댓글