콘솔 텍스트 출력 처리

Console 클래스

System 네임스페이스에 속하며 .NET 기본 클래스 라이브러리(BCL)의 구성 요소입니다

콘솔 창의 텍스트 읽기/쓰기 기능을 처리하며 두 가지 출력 메서드를 제공합니다: Write() / WriteLine()

VS에서 Console 텍스트 위에 커서를 올리고 F12 키를 누르면 해당 클래스 정의를 조회할 수 있습니다

Console 메타데이터 보기 창으로 이동하는데, 실제 소스 코드가 아닌 VS 기본 디컴파일 기능으로 클래스 메서드, 클래스명, 매개변수 등 정보를 확인할 수 있습니다.

Console 메타데이터 내 호출 가능한 함수로 Write()WriteLine() 을 확인할 수 있습니다.

Console.Write()

텍스트 출력 후자동 줄바꿈이 적용되지 않으며 연속 출력 내용은 한 줄에 이어서 표시됩니다

            // 축약 표기(상단에 using System 선언 시 System. 접두사 생략 가능)
            Console.Write("Hello everyone.");

            // 완전 정식 표기
            System.Console.Write("This is foxdevelop.");
            System.Console.Write("This is com.");
            System.Console.Write("good luck.");Code language: JavaScript (javascript)

위 코드를 Main 메서드 안에 붙여넣고 실행하세요.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HelloDemo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 축약 표기(상단에 using System 선언 시 System. 접두사 생략 가능)
            Console.Write("Hello everyone.");

            // 완전 정식 표기
            System.Console.Write("This is foxdevelop.");
            System.Console.Write("This is com.");
            System.Console.Write("good luck.");
        }
    }
}Code language: JavaScript (javascript)

출력 결과

Hello everyone.This is foxdevelop.This is com.good luck.Code language: CSS (css)

텍스트 리터럴은큰따옴표로 감싸야 하며 작은따옴표는 사용할 수 없습니다.

Console.WriteLine()

Write 와 기능은 동일하나 출력 끝에자동으로 개행 문자가 추가되어 각 출력 내용이 별도의 줄에 표시됩니다.

출력이 완료될 때마다 커서가 다음 줄 맨 앞으로 이동해 다음 출력을 기다리는 방식입니다.

            Console.WriteLine("Hello everyone.");

            Console.WriteLine("This is foxdevelop.");
            Console.WriteLine("This is com.");
            Console.WriteLine("good luck.");Code language: JavaScript (javascript)

출력 결과

이번에는 매 출력마다 줄이 바뀌며 커서가 다음 줄로 이동한 것을 확인할 수 있습니다.

형식 문자열

(구식 자리 표시 문법으로 구형 프로젝트에서 여전히 많이 사용됨)

  • 메서드 매개변수 형식:Console.WriteLine(형식문자열, 치환값0, 치환값1, ...)
  • 첫 번째 매개변수는 고정적으로형식 문자열이며 {숫자}치환 표시자로 사용합니다
  • 표시자 숫자는 0 부터 시작하며 뒤에 전달한 치환값 순서와 매칭됩니다
  • 여러 치환 매개변수는 쉼표로 구분합니다
        static void Main(string[] args)
        {
            Console.WriteLine(" {0} + {1} = {2}", 9, 6,9 + 6);
        }Code language: JavaScript (javascript)

출력 결과

 9 + 6 = 15

예시 첫 문자열 ” {0} + {1} = {2}” 에 자리 표시자가 세 개 있으며 숫자 순서대로 뒤 매개변수 9, 6, 덧셈 결과 15가 대입됩니다.

문자열 보간

C# 6.0 이상 버전에서 추가된 편리한 문법으로 자리 표시자 안에 직접 변수를 작성할 수 있습니다

문자열 앞에 $ 기호를 붙여 보간 기능을 활성화하고 중괄호 {} 안에변수명을 직접 기입합니다. 컴파일러가 자동으로 변수 값을 대체하므로 별도 치환 인자를 넘길 필요 없습니다

        static void Main(string[] args)
        {
            double pi = 3.14;
            string webSite = "foxdevelop.com";
            Console.WriteLine($"The Pi is {pi} and the website is {webSite}.");
        }Code language: JavaScript (javascript)

출력 결과

The Pi is 3.14 and the website is foxdevelop.com.Code language: CSS (css)

다중 변수 활용

아래 예시는 하나의 문자열 템플릿 안에 여러 변수 자리 표시자를 사용하는 경우입니다

int latitude = 36;
int longitude = 17;
string north = "N", east = "E", south = "S";
Console.WriteLine($"위도 {latitude}{north}, 경도 {longitude}{east}");
Code language: JavaScript (javascript)

실행 결과

위도 36N, 경도 17E

사용 시 주의점

복잡한 보간 문자열은 변수 순서를 혼동하기 쉬우므로 구식 형식 문법과 신식 보간 문법 모두 익혀두는 것이 좋습니다. 현업에 아직 구식 문법을 사용하는 프로젝트가 많습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다