본문 바로가기
프로그래밍기초/C#

C# Console 설정 및 시스템 시간 얻기

by chunkind 2020. 5. 24.
반응형

C# 콘솔 애플리케이션에서 콘솔의 다양한 기능을 사용하는 방법을 정리합니다. 이 글에서는 커서 제어, 텍스트 색상 변경, 시스템 시간 확인, 콘솔에 텍스트 출력하는 방법 등을 다룹니다.

커서 제어

커서 보이게/안보이게 설정

콘솔 커서를 보이거나 숨기기 위해 Console.CursorVisible 속성을 사용합니다.

// 커서를 안보이게 설정
Console.CursorVisible = false;

// 커서를 보이게 설정
Console.CursorVisible = true;

커서 위치 변경

콘솔 커서의 위치를 변경하려면 Console.SetCursorPosition(int left, int top) 메서드를 사용합니다.

int x = 0; // x 좌표 
int y = 0; // y 좌표 
Console.SetCursorPosition(x, y); // 커서 위치 변경

콘솔 텍스트 색 변경

콘솔에서 텍스트의 색상을 변경하려면 Console.ForegroundColor 속성을 사용합니다. ConsoleColor 열거형을 사용하여 색상을 지정할 수 있습니다.

Console.ForegroundColor = ConsoleColor.Green;

시스템 시간

현재 시스템 시간을 밀리초 단위로 얻으려면 System.Environment.TickCount 속성을 사용합니다. 이 값은 시스템이 시작된 후 경과한 밀리초를 반환합니다.

int tick = System.Environment.TickCount;

콘솔에 문자 쓰기

콘솔에 텍스트를 출력하는 방법에는 Console.Write와 Console.WriteLine 메서드가 있습니다. Console.Write는 줄 바꿈 없이 출력하고, Console.WriteLine은 출력 후 줄 바꿈을 수행합니다.

// 줄 바꿈 없이 출력 
Console.Write("hello "); 
Console.Write("world!"); 
// 결과: hello world! 
// 줄 바꿈 후 출력 
Console.WriteLine("hello "); 
Console.WriteLine("world!"); 
// 결과: 
// hello 
// world!

예제

다음은 위에서 설명한 기능들을 하나의 콘솔 애플리케이션에서 사용하는 예제입니다.

using System;

class Program
{
    static void Main()
    {
        // 커서를 안보이게 설정
        Console.CursorVisible = false;

        // 텍스트 색상 변경
        Console.ForegroundColor = ConsoleColor.Green;

        // 현재 시스템 시간 출력
        int tick = System.Environment.TickCount;
        Console.WriteLine("System Tick Count: " + tick);

        // 커서 위치 변경
        Console.SetCursorPosition(10, 10);
        Console.Write("Cursor moved to (10, 10)");

        // 커서를 다시 보이게 설정
        Console.CursorVisible = true;

        // 콘솔에 문자 출력
        Console.WriteLine();
        Console.WriteLine("hello ");
        Console.WriteLine("world!");

        // 콘솔 색상 초기화
        Console.ResetColor();
    }
}

이 예제는 콘솔 애플리케이션에서 커서를 숨기고, 텍스트 색상을 변경하고, 시스템 시간을 출력하고, 커서 위치를 변경한 후 텍스트를 출력하는 과정을 보여줍니다. 마지막으로 Console.ResetColor를 사용하여 콘솔 색상을 초기화합니다.

이와 같은 방법들을 사용하여 C# 콘솔 애플리케이션을 보다 효율적으로 제어할 수 있습니다.

반응형