최근 탐색한 프로젝트에서 Console.Clear()를 사용하여 전체 콘솔 화면을 지웁니다. ) 효과적인 것으로 입증되었습니다. 그러나 더 세련된 접근 방식이 필요했습니다. 전체 콘솔 대신 특정 줄만 지우는 것입니다.
안타깝게도 Console.Clear()에는 특정 줄을 선택적으로 대상으로 지정하는 기능이 부족합니다. 삭제 부분. 그러나 Console.SetCursorPosition 함수를 사용하여 특정 줄 번호로 이동할 수 있습니다. 원하는 줄에 배치한 후에는 콘솔 창 너비에 걸쳐 일련의 공백을 작성하여 이를 지울 수 있으며, 이전 텍스트를 효과적으로 덮어쓸 수 있습니다.
이 프로세스를 단순화하기 위해 다음을 정의합니다. ClearCurrentConsoleLine()이라는 정적 메서드:
public static void ClearCurrentConsoleLine() { int currentLineCursor = Console.CursorTop; Console.SetCursorPosition(0, Console.CursorTop); Console.Write(new string(' ', Console.WindowWidth)); Console.SetCursorPosition(0, currentLineCursor); }
이 메서드는 현재 줄 커서 위치를 결정하고 커서를 다시 해당 줄의 시작 부분에 창 너비 전체에 공백을 써서 텍스트를 덮어쓴 다음 커서를 원래 위치로 되돌립니다.
이 접근 방식을 설명하려면 다음 예를 고려하세요. :
Console.WriteLine("Test"); Console.SetCursorPosition(0, Console.CursorTop - 1); ClearCurrentConsoleLine();
실행되면 다음 코드는 다음과 같습니다.
결과적으로 "Test"는 콘솔 디스플레이에서 제거되고 후속 콘텐츠는 그대로 유지됩니다.
자세한 내용은 Console.SetCursorPosition에 대한 MSDN 설명서를 참조하세요.
위 내용은 C#을 사용하여 콘솔에서 특정 줄을 선택적으로 지울 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!