C#에서 입출력을 다루는 방법

2023. 10. 13. 13:54·C#
반응형

C#에서 입출력을 다루는 방법은 크게 두 가지가 있습니다.

  • 콘솔 입출력: 콘솔을 통해 입력과 출력을 수행하는 방법입니다.
  • 파일 입출력: 파일을 통해 입력과 출력을 수행하는 방법입니다.

콘솔 입출력

콘솔 입출력은 콘솔을 통해 입력과 출력을 수행하는 방법입니다. 콘솔 입출력을 위한 메서드는 Console 클래스에 정의되어 있습니다.

 

Console.ReadLine()

Console.ReadLine() 메서드는 콘솔에서 한 줄의 문자열을 입력받는 메서드입니다.

string input = Console.ReadLine();

위 코드는 콘솔에서 한 줄의 문자열을 입력받아 input 변수에 저장합니다.

 

Console.WriteLine()

Console.WriteLine() 메서드는 콘솔에 문자열을 출력하는 메서드입니다.

Console.WriteLine("Hello, world!");

위 코드는 콘솔에 "Hello, world!"라는 문자열을 출력합니다.

 

StreamReader

StreamReader 클래스는 파일을 통해 입력을 수행하는 클래스입니다. StreamReader 클래스의 메서드를 사용하여 파일에서 문자열을 읽을 수 있습니다.

 

StreamReader.ReadLine()

StreamReader.ReadLine() 메서드는 파일에서 한 줄의 문자열을 읽는 메서드입니다.

using System.IO;

public class Example
{
    public static void Main(string[] args)
    {
        // 파일 스트림을 생성합니다.
        StreamReader reader = new StreamReader("myfile.txt");

        // 파일에서 한 줄의 문자열을 읽습니다.
        string line = reader.ReadLine();

        // 파일 스트림을 닫습니다.
        reader.Close();

        // 읽은 문자열을 출력합니다.
        Console.WriteLine(line);
    }
}

위 코드는 "myfile.txt" 파일에서 한 줄의 문자열을 읽어 line 변수에 저장합니다.

 

콘솔에서 입력을 받는 방법

StreamReader 클래스를 사용하여 콘솔에서 입력을 받을 수도 있습니다. 다음은 콘솔에서 입력을 받는 방법입니다.

using System.IO;

public class Example
{
    public static void Main(string[] args)
    {
        // 스트림을 생성합니다.
        StreamReader stream = new StreamReader(new BufferedStream(Console.OpenStandardInput()));

        // 콘솔에서 한 줄의 문자열을 읽습니다.
        string line = stream.ReadLine();

        // 콘솔 스트림을 닫습니다.
        stream.Close();

        // 읽은 문자열을 출력합니다.
        Console.WriteLine(line);
    }
}

위 코드는 콘솔에서 한 줄의 문자열을 읽어 line 변수에 저장합니다.

 

Console.ReadLine() vs StreamReader.ReadLine()

Console.ReadLine() 메서드와 StreamReader.ReadLine() 메서드는 모두 콘솔에서 한 줄의 문자열을 읽는 메서드이지만, 다음과 같은 차이점이 있습니다.

기능 Console.ReadLine() StreamReader.ReadLine()
사용 방법 콘솔을 통해 직접 입력 파일을 통해 입력
성능 상대적으로 느림 상대적으로 빠름
유연성 유연하지 않음 유연함

Console.ReadLine() 메서드는 콘솔을 통해 직접 입력을 받기 때문에, 파일을 통해 입력을 받지 못합니다. 또한, Console.ReadLine() 메서드는 유연하지 않아서, 한 줄 이상의 문자열을 읽거나, 특정 조건에 따라 입력을 처리하는 등의 작업을 수행하기 어렵습니다.

 

StreamReader.ReadLine() 메서드는 파일을 통해 입력을 받기 때문에, 콘솔을 통해 입력을 받을 수 없습니다. 또한, StreamReader.ReadLine() 메서드는 유연하여, 한 줄 이상의 문자열을 읽거나, 특정 조건에 따라 입력을 처리하는 등의 작업을 수행하기 쉽습니다.

 

결론

콘솔 입출력은 간단한 작업을 수행하기에 적합한 방법입니다. 파일 입출력은 복잡한 작업을 수행하기에 적합한 방법입니다.

 

저작자표시 비영리 변경금지 (새창열림)

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

C#의 char 자료형  (0) 2023.10.18
코드 실행시간 측정 : Stopwatch  (3) 2023.10.17
C#의 오버로딩이란?  (0) 2023.10.01
C#의 var 키워드란?  (1) 2023.09.30
C#의 동적 변수란?  (0) 2023.09.29
'C#' 카테고리의 다른 글
  • C#의 char 자료형
  • 코드 실행시간 측정 : Stopwatch
  • C#의 오버로딩이란?
  • C#의 var 키워드란?
코샵
코샵
나의 코딩 일기장
    반응형
  • 코샵
    끄적끄적 코딩 공방
    코샵
    • 분류 전체보기 (725)
      • 스마트팜 (0)
      • 상품 추천 (223)
      • MongoDB (4)
      • 하드웨어 (17)
      • 일기장 (4)
      • 파이썬 (130)
        • Basic (41)
        • OpenCV (8)
        • Pandas (15)
        • PyQT (3)
        • SBC(Single Board Computer) (1)
        • 크롤링 (14)
        • Fast API (29)
        • Package (6)
      • Unity (138)
        • Tip (41)
        • Project (1)
        • Design Pattern (8)
        • Firebase (6)
        • Asset (2)
      • Linux (4)
      • C# (97)
        • Algorithm (11)
        • Window (7)
      • TypeScript (51)
        • CSS (10)
      • Git (11)
      • SQL (5)
      • Flutter (10)
        • Tip (1)
      • System (1)
      • BaekJoon (6)
      • Portfolio (2)
      • MacOS (1)
      • 유틸리티 (1)
      • 서비스 (6)
      • 자동화 (3)
      • Hobby (10)
        • 물생활 (10)
        • 식집사 (0)
  • 인기 글

  • 태그

    라떼우유
    appdevelopment
    상품 리뷰 크롤링
    리뷰이관
    devlife
    스마트스토어리뷰
    codingcommunity
    셀레니움
    C#
    쇼핑몰리뷰
    cv2
    ipcamera
    리뷰관리
    리스트
    list
    learntocode
    rtsp
    스크립트 실행 순서
    유니티
    파이썬
    카페24리뷰이관
    programmerlife
    스크립트 실행
    codingtips
    unity
    믈레코비타멸균우유
    programming101
    Python
    카페24리뷰
    긴유통기한우유
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코샵
C#에서 입출력을 다루는 방법
상단으로

티스토리툴바