[C#] 헥사 문자열을 Int 로 변환

2023. 3. 29. 19:44프로그래밍

728x90

 

문제는 C#에서 COMException 일 발생을 하였습니다. 이 때 이 문제에 대한 ErrorCode 와 HResult 값을 int 로 받을 수가 있는 데요. 이런 경우에 해당 문제가 발생 했을 경우에 어떤 조치를 취하고 싶었다는 것입니다.

예를 들어,

try
{
// 뭔가 오류...
}
catch(COMException ce)
{
   if(ce.HResult == 0x8004033A)
   {
       //뭔가를 하고 싶어하는 코드...
   }
}
 

이런 경우 위의 헥사 문자열을 int 값을 변경 하는 것이 바른 방법이 아닌가 생각이 들어서 찾아 보았습니다.

 

Converting Hex string to Int in C# | theburningmonk.com

Learn to build production-ready serverless applications on AWS

theburningmonk.com

 

접두가 붙지 않은 경우, 즉 헥사 코드의 '0x' 접두어가 붙지 않은 경우에는 다음과 같이 사용 할 수 있다고 합니다.
string hex = "142CBD";
// this returns 1322173
int intValue = int.Parse(hex, System.Globalization.NumberStyles.HexNumber);
 

접두어가 붙은 경우, 즉 헥사 코드의 '0x' 접두어가 붙은 경우에는 다음과 같이 사용 할 수 있다고 합니다.

string prefixedHex = "0x142CBD";
// this works, and returns 1322173
int intValue = Convert.ToInt32(prefixedHex , 16);
 

이상.

728x90