C# 콘솔 애플리케이션을 실행할 때, 프로그램이 빠르게 종료되어 결과를 확인하기 어려운 경우가 있습니다. 이럴 때 프로그램 종료를 지연시켜 사용자의 입력을 대기하게 만들어 결과를 확인할 수 있도록 하는 방법에 대해 알아보겠습니다.
종료 지연의 필요성
- 콘솔 애플리케이션에서는 작업이 완료된 후 자동으로 창이 닫히게 됩니다.
- 결과 확인이나 디버깅을 위해 종료를 지연시킬 필요가 있습니다.
Console.ReadLine() 활용하기
- Console.ReadLine() 메서드는 사용자로부터 한 줄의 텍스트 입력을 받을 때까지 프로그램의 실행을 멈춥니다.
- 사용자가 Enter 키를 누를 때까지 대기 상태를 유지하므로, 이를 활용하면 콘솔 애플리케이션의 종료를 지연시킬 수 있습니다.
Console.WriteLine("프로그램을 종료하려면 Enter 키를 누르세요.");
Console.ReadLine();
Console.ReadKey() 활용하기
- Console.ReadKey() 메서드는 사용자로부터 아무 키나 입력 받을 때까지 프로그램의 실행을 멈춥니다.
- Enter 키 외에도 다른 키 입력에 반응하므로, 더 빠른 종료를 원하는 경우에 유용합니다.
Console.WriteLine("프로그램을 종료하려면 아무 키나 누르세요.");
Console.ReadKey();
두 메서드의 차이점
- Console.ReadLine(): 사용자가 Enter 키를 누를 때까지 대기합니다.
- Console.ReadKey(): 아무 키나 입력될 때까지 대기합니다.
실사용의 예
이전에 CultureInfo 클래스에 대해서 작성하면서 사용했었던 콘솔 프로그램이 있었는데, 오래간만에 이프로그램을 그대로 사용해봤더니 콘솔창이 실행 후 바로 종료되는 현상이 있었습니다. 그래서 소스코드 마지막에 Console.ReadLine()을 넣어주었습니다.
소스코드를 수정하여 실행 후 마지막에 프로그램을 종료하려면 Enter 키를 누르세요. 하고 기다리는걸 확인 할 수 있었습니다.
수정된 종료 소스코드는 아래의 파일을 다운받으시면 됩니다.
결론
C# 콘솔 애플리케이션에서 프로그램의 종료를 지연시키는 방법은 간단합니다. `Console.ReadLine()` 또는 `Console.ReadKey()`를 활용하여 사용자의 입력을 대기하게 만들면, 결과 확인이나 디버깅 과정에서 큰 도움이 됩니다.
'Language > C# WPF' 카테고리의 다른 글
[C#] .net 혼합모드 어셈블리 런타임의 버젼 오류 해결 및 app.config 추가방법 (0) | 2023.12.05 |
---|---|
[C#] OpenFileDialog 활용하여 파일 선택하기 (0) | 2023.09.22 |
[C#] FindWindow(), FindWindowEx()를 이용한 윈도우 창 찾기 (0) | 2023.09.05 |
[C#] 문자열에서 원하는 위치의 글자만 가져오기 (0) | 2023.08.28 |
[C#] Excel 엑셀파일 읽어서 DataGridView 출력하기 EPPlus (0) | 2023.04.06 |