♥/C#

[C#] Console.ReadKey()로 입력받아서 숫자로 변환하기

마스테마 2023. 12. 30. 19:26

https://xclass.tistory.com/179

[C#] Console.ReadKey() 사용하기(콘솔 키 입력)

https://xclass.tistory.com/173 [C#] Console.ReadKey()로 입력받아서 숫자로 변환하기 작은 프로젝트를 하던 도중에 Console.ReadKey() 이용해서 하나하나 입력받으면 좋겠다 싶어서 알아봤는데, 다소 복잡한 과정

xclass.tistory.com

 
 
작은 프로젝트를 하던 도중에 Console.ReadKey() 이용해서 하나하나 입력받으면 좋겠다 싶어서 알아봤는데,
다소 복잡한 과정이 필요했다!
 
 
우선 ConsoleKeyInfo형 변수 temp를 하나 만들어주고 그곳에 Console.ReadKey()의 값을 넣어준다.
 
temp.KeyChar를 통해 ConsoleKeyInfo 값이 갖고있는 유니코드 값을 가지고 와서,
char.IsDigit()을 통해 입력된 값이 10진수인지 아닌지를 판별한다.
 
판별로 true가 나왔다면!! temp.KeyChar를 ToString()을 사용해 문자열로 바꿔주고,
그것을 int.Parse()를 통해서 10진수 int형으로 바꿔주면 된다!!
 
차근차근 살펴보니까 쉽죠???
저도 대박 놀랐습니다
후후 생각보다 쉽더라구요
 
프로젝트 코드 안에서 예시를 캡처한거라 array나 i는 무시..ㅎㅎ

 
이 방법을 알려준 사이트 : https://stackoverflow.com/questions/28955029/how-do-i-convert-a-console-readkey-to-an-int-c-sharp
 
 

https://learn.microsoft.com/ko-kr/dotnet/api/system.char.isdigit?view=net-7.0&viewFallbackFrom=dotnet-plat-ext-3.0
https://learn.microsoft.com/en-us/dotnet/api/system.consolekeyinfo.keychar?view=net-8.0

 
기타 자세한 정의를 알기위해 찾아본 microsoft 공식 사이트!!