파일 입출력

2025. 10. 23. 13:58·C#

**스트림(Stream)**은

파일,네트워크,메모리 등 다양한 데이터 소스와 상호작용하는 방식

데이터를 연속적인 흐름 으로 처리하며, 파일을 다룰 때 효율적이고 유연한 방법을 제공

 

<파일을 다루는 클래스와 메소드>

클래스 설명
File 파일에 대한 생성, 복사, 삭제, 이동 및 열기를 위한 정적 메소드를 제공
FileInfo  파일에 대한 생성, 복사, 삭제, 이동 및 열기를 위한 속성 및 인스턴스 메소드를 제공
FileStream  파일에 대한 스트림을 제공하여 동기 및 비동기 읽기/쓰기 작업을 모두 지원
StreamReader  문자열에서 읽어오는 TextReader를 구현함
StreamWriter  TextWriter를 구현하여 특정 인코딩의 스트림에 문자를 씀

 

파일 쓰기 File.WriteAllText

파일 읽기 File.ReadAllText


 

 

using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Prac
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnRead_Click(object sender, EventArgs e)
        {
            StreamReader sr = new StreamReader("data.txt"); // 스트림 생성하기
            while(!sr.EndOfStream) // 파일의 끝이 아니면 계속 반복
            {
                rtb.AppendText(sr.ReadLine());
            }
            MessageBox.Show("파일 읽음");
            sr.Close(); // 스트림 닫아주기
        }

        private void btnWrite_Click(object sender, EventArgs e)
        {
            StreamWriter sw = new StreamWriter("data.txt");
            sw.WriteLine("<<입력내용>>\n");
            sw.WriteLine(rtb.Text);
            MessageBox.Show("저장됨");
            rtb.ResetText();
            sw.Close();
        }

        private void btnOpen_Click(object sender, EventArgs e)
        {
            rtb.ResetText();
        }
    }
}

'C#' 카테고리의 다른 글

반복문 for VS for each 차이  (0) 2025.10.28
ini 프로그램 (gpt 사용)  (0) 2025.10.27
C# ini 파일 읽기  (0) 2025.10.27
.ini 파일  (0) 2025.10.23
시리얼 통신  (0) 2025.10.22
'C#' 카테고리의 다른 글
  • ini 프로그램 (gpt 사용)
  • C# ini 파일 읽기
  • .ini 파일
  • 시리얼 통신
joo_coding
joo_coding
2025.02.18~
  • joo_coding
    주코딩일지
    joo_coding
  • 전체
    오늘
    어제
    • 분류 전체보기 (219)
      • 일지 (19)
      • 계획표 (7)
      • 프로젝트 (6)
      • C언어 (35)
        • 연습장 (12)
      • C++ (3)
      • C# (34)
      • Python (28)
        • 연습장 (11)
      • TCP IP (4)
      • DB (2)
      • ubuntu (1)
      • Git (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    c언어 #vscode #gcc #윈도우 #c언어윈도우 #gcc윈도우 #vscode윈도우 #c #c++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
joo_coding
파일 입출력
상단으로

티스토리툴바