C#의 Uri.FromHex() 메서드는 16진수 숫자 문자(0~9, a~f, A~F)에 해당하는 10진수 값을 반환하는 정적(static) 메서드입니다. 주로 URI 인코딩·디코딩 과정에서 16진수 문자를 실제 숫자 값으로 변환해야 할 때 유용하게 활용됩니다.
구문
기본 구문은 다음과 같습니다.
public static int FromHex (char digit);
매개변수 digit은 변환하고자 하는 16진수 문자(0~9, a~f, A~F)입니다. 참고로 유효하지 않은 문자가 전달되면 ArgumentException 예외가 발생합니다.
예제 1
Uri.FromHex() 메서드를 사용하는 첫 번째 예제를 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
char ch = 'D';
Console.WriteLine("Character value = "+ch);
int res = Uri.FromHex(ch);
Console.WriteLine("Converted int value = "+res);
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Character value = D Result = 13
문자 'D'는 16진수 표기에서 10진수 13에 해당하므로, 결과값으로 13이 반환됩니다.
예제 2
이번에는 숫자 문자 '6'을 변환하는 두 번째 예제입니다.
using System;
public class Demo {
public static void Main(){
char ch = '6';
Console.WriteLine("Character value = "+ch);
int res = Uri.FromHex(ch);
Console.WriteLine("Result = "+res);
}
}출력 결과
Character value = 6 Result = 6
숫자 문자 '6'은 그대로 정수 6으로 변환되어 출력됩니다.
주요 특징 정리
- 대소문자를 구분하지 않으므로 'a'와 'A' 모두 10을 반환합니다.
- 'g', 'z', '!' 등 유효한 16진수 문자가 아니면 ArgumentException 예외가 발생합니다.
- 반환 타입이 int이므로 변환된 값을 바로 산술 연산에 사용할 수 있습니다.