오늘 저는 데이터베이스에서 데이터를 읽고 표시하는 C#의 콘솔 프로그램을 작성했습니다. 실행이 완료되면 화면이 깜빡이고 프로그램이 종료되며, 프로그램이 반환하는 데이터는 전혀 보이지 않습니다. 데이터를 읽은 후 프로그램을 어떻게 일시정지하나요? 마지막에 문장을 추가했습니다:
Console.Read();
현재 프로그램은 중단되었습니다. 하지만 프로그램을 종료하려면 여전히 엔터 버튼을 눌러야 합니다. 임의의 키 대신, 우리 모두의 일반적인 콘솔 프로그램에서 어떻게 이런 효과를 낼 수 있을까요? 저는 Console.Read(); 방법은 괜찮지만, 결과는 여전히 좋지 않습니다. 바이두에서 찾아봤지만 실패했는데, 이렇게 간단한 질문에 대한 답을 찾을 줄은 몰랐어요(^_^ 아마 모두가 대가라 이런 문제를 겪지 않는 걸지도 모르겠네요). 저도 직접 해결할 수 있을 뿐입니다. Read()와 ReadLine() 메서드로 여러 번 시도해봤고, 결국 콘솔에 ReadKey() 메서드가 있다는 것을 알게 되었고, 문서 설명은 "사용자가 누른 문자나 기능 키를 받아라"라는 것입니다. 그리고 과부하가 발생했습니다: 하나는 매개변수가 없고, 누르는 키가 콘솔 창에 표시됩니다; 또 다른 형태는 bool parameter intercept를 가지고 있는데, 이는 누르인 키가 콘솔 창에 표시되는지 여부를 결정하며, true는 누르인 키가 표시되지 않고, 그 반대도 마찬가지입니다.
Console.Write("아무 키 누르든 종료하라..."); 콘솔.ReadKey(true);
컴파일 실행 .............. 그래! 드디어 해냈어요, 적어두었고, 같은 문제를 겪는 친구들에게 도움이 되길 바랐어요. |