C#의 Convert.ToByte 메서드는 지정된 값을 8비트 부호 없는 정수(byte)로 변환할 때 사용합니다. byte 형식은 0부터 255까지의 값을 표현할 수 있으며, 특히 문자(ASCII 코드)를 숫자 값으로 다뤄야 할 때 유용하게 활용됩니다.
먼저 간단한 예를 들어 보겠습니다. char 형식의 변수가 하나 있다고 가정해 봅시다.
char charVal = 'a';
이 문자를 8비트 부호 없는 정수로 변환하려면 다음과 같이 작성합니다.
byte byteVal = Convert.ToByte(charVal);
Convert.ToByte 메서드는 문자의 ASCII 코드 값을 기준으로 변환을 수행합니다. 이번에는 문자 배열에 담긴 여러 문자를 반복문으로 한 번에 변환하는 예제를 살펴보겠습니다.
예제
using System;
public class Demo {
public static void Main() {
char[] charVal = { 'p', 'q', 'r', 's' };
foreach (char c in charVal) {
byte byteVal = Convert.ToByte(c);
Console.WriteLine("{0} is converted to = {1}", c, byteVal);
}
}
}실행 결과
p is converted to = 112 q is converted to = 113 r is converted to = 114 s is converted to = 115
실행 결과에서 볼 수 있듯이, 각 문자는 해당하는 ASCII 코드 값으로 변환됩니다. 'p'는 112, 'q'는 113처럼 알파벳 소문자는 연속된 숫자 값으로 매핑되는 것을 확인할 수 있습니다. 참고로 변환 대상 값이 byte 범위(0~255)를 벗어나면 OverflowException이 발생하므로, 변환 전에 값의 범위를 확인하는 것이 안전합니다.