C#에서 문자열을 정수(int)로 변환하는 방법
C# 프로그래밍에서는 사용자 입력이나 파일에서 읽어온 데이터가 문자열(string) 형태인 경우가 많습니다. 이러한 문자열을 산술 연산이나 비교 등에 활용하려면 먼저 정수형으로 변환해야 합니다. 가장 대표적인 방법은 Int32.Parse() 메서드를 사용하는 것입니다.
Int32.Parse()를 사용한 기본 변환
먼저 변환할 문자열을 준비합니다.
string str = "9999";
이제 Int32.Parse() 메서드를 사용하여 문자열을 정수로 변환합니다.
int n = Int32.Parse(str);
변환된 정수 값을 콘솔에 출력하는 전체 예제 코드는 다음과 같습니다.
예제 코드
using System;
class Demo {
static void Main() {
string str = "9999";
int n = Int32.Parse(str);
Console.WriteLine(n);
}
}
실행 결과
9999
주의사항: 안전한 변환을 위한 Int32.TryParse()
Int32.Parse()는 문자열이 유효한 숫자 형식이 아니거나 null인 경우 FormatException 또는 ArgumentNullException 예외를 발생시킵니다. 따라서 외부 입력값처럼 변환이 실패할 가능성이 있는 문자열이라면 Int32.TryParse() 메서드를 사용하는 것이 훨씬 안전합니다. TryParse()는 예외를 던지지 않고 변환 성공 여부를 bool 값으로 반환하며, 성공 시 out 매개변수를 통해 결과를 전달합니다.
using System;
class Demo {
static void Main() {
string str = "9999";
if (Int32.TryParse(str, out int n)) {
Console.WriteLine("변환 성공: " + n);
} else {
Console.WriteLine("변환 실패: 유효한 숫자가 아닙니다.");
}
}
}
정리
- Int32.Parse(): 문자열이 반드시 유효한 숫자임이 보장될 때 사용하며, 실패 시 예외가 발생합니다.
- Int32.TryParse(): 변환 실패 가능성이 있는 입력을 다룰 때 사용하며, 예외 없이 성공 여부를 확인할 수 있습니다.
상황에 맞는 메서드를 선택하면 더욱 견고하고 안정적인 C# 코드를 작성할 수 있습니다.