C#의 Convert.ToChar(String, IFormatProvider) 메서드는 지정된 문자열의 첫 번째 문자를 유니코드 문자(char)로 변환하는 기능을 제공합니다. 변환 과정에서 문화권(culture)별 형식 정보를 인자로 전달할 수 있으며, 이 메서드는 정적(static) 메서드이므로 별도의 인스턴스 생성 없이 바로 호출할 수 있습니다.
구문(Syntax)
Convert.ToChar(String, IFormatProvider) 메서드의 기본 구문은 다음과 같습니다.
public static char ToChar(string val, IFormatProvider provider);
매개변수 설명
val: 길이가 1인 문자열 또는 null입니다. 변환할 대상 문자열을 의미합니다.
provider: 문화권별 형식 정보를 제공하는 IFormatProvider 객체입니다. 다만 이 오버로드에서는 해당 매개변수가 실제 변환에 영향을 주지 않으므로 무시됩니다.
예제(Example)
아래 예제는 en-US 문화권 정보를 사용하여 문자열 "Z"를 char 타입으로 변환하는 과정을 보여줍니다.
using System;
using System.Globalization;
public class Demo {
public static void Main(){
CultureInfo cultures = new CultureInfo("en-US");
String val = "Z";
Console.WriteLine("Converted char value...");
char res = Convert.ToChar(val, cultures);
Console.Write("{0}", res);
}
}실행 결과(Output)
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Converted char value... Z
참고: 발생 가능한 예외
Convert.ToChar(String, IFormatProvider) 메서드를 사용할 때는 다음 예외 상황에 유의해야 합니다.
ArgumentNullException: val 매개변수가 null일 경우 발생합니다.
FormatException: val의 길이가 1이 아닐 경우 발생합니다. 반드시 길이가 정확히 1인 문자열만 전달해야 합니다.
따라서 안전한 코드 작성을 위해서는 변환 전에 문자열의 길이를 검사하거나 try-catch 블록으로 예외 처리를 함께 구현하는 것이 좋습니다.