Working with Files
Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨 — 66개 중 26번째.
C#에서는 System.IO 네임스페이스의 클래스를 사용하여 파일을 작업할 수 있습니다. 텍스트 파일의 두 주요 클래스는 읽기를 위한 StreamReader와 쓰기를 위한 StreamWriter입니다.
파일에 쓰기:
using System.IO;
// 파일에 쓰기 위해 StreamWriter 생성
StreamWriter writer = new StreamWriter("myfile.txt");
// 파일에 텍스트 쓰기
writer.WriteLine("Hello, World!");
writer.WriteLine("This is line 2");
// 파일 닫기
writer.Close();파일에서 읽기:
using System.IO;
// 파일에서 읽기 위해 StreamReader 생성
StreamReader reader = new StreamReader("myfile.txt");
// 파일의 모든 내용을 읽음
string content = reader.ReadToEnd();
Console.WriteLine(content);
// 파일 닫기
reader.Close();줄 단위로 읽기:
StreamReader reader = new StreamReader("myfile.txt");
// Read first line
string line1 = reader.ReadLine();
Console.WriteLine(line1);
// Read second line
string line2 = reader.ReadLine();
Console.WriteLine(line2);
reader.Close();작업이 끝나면 항상 파일을 Close()로 닫으세요!
챌린지
쉬움ReadFile이라는 이름의 메서드를 생성하세요. 이 메서드는:
- 하나의 문자열 매개변수
filename을 받습니다 StreamReader를 사용하여 파일에서 내용을 읽습니다- 콘솔에 내용을 출력합니다
- 리더를 닫습니다
치트 시트
System.IO 네임스페이스를 사용하여 파일을 작업하세요. StreamWriter를 사용하여 쓰고 StreamReader를 사용하여 읽으세요.
파일에 쓰기:
StreamWriter writer = new StreamWriter("myfile.txt");
writer.WriteLine("Hello, World!");
writer.Close();파일에서 읽기:
StreamReader reader = new StreamReader("myfile.txt");
string content = reader.ReadToEnd();
Console.WriteLine(content);
reader.Close();줄 단위로 읽기:
StreamReader reader = new StreamReader("myfile.txt");
string line = reader.ReadLine();
Console.WriteLine(line);
reader.Close();주요 메서드:
WriteLine(text)- 파일에 한 줄 쓰기ReadToEnd()- 파일의 모든 텍스트 읽기ReadLine()- 파일에서 한 줄 읽기Close()- 파일 닫기 (항상 수행하세요!)
직접 해보기
using System;
using System.IO;
class Program
{
public static void ReadFile(string filename)
{
// 여기에 코드를 작성하세요
}
static void Main(string[] args)
{
string filename = Console.ReadLine();
ReadFile(filename);
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
논리 및 흐름의 모든 레슨
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety