C# – 문자열의 정수형 변환시 유의사항

“1234”  와 같은 문자열을 int로 변환하기 위해서는 아래와 같은 메소드를 사용할 수 있는데요..

Convert.ToInt32()
int.Parse()

Convert.ToInt32()를 Reflector로 살펴보면 아래와 같습니다.

public static int ToInt32(string value)
{
      if (value == null)
      {
            return 0;
      }
      return int.Parse(value);
}

즉.. 입력값이 null 일 경우..
Convert.ToInt32() 는 0을 리턴하고
int.Parse() 는 오류를 발생합니다.

뭐가 더 좋은건지는 상황에 따라 틀릴듯합니다만..
정수형으로 변환하기 전에 문자열을 string.IsNullOrEmpty()로 검사하는게 좋겠습니다.

MSDN 참고
http://msdn2.microsoft.com/en-us/library/system.int32.parse.aspx
http://msdn2.microsoft.com/en-us/library/sf1aw27b.aspx

사용자 삽입 이미지

댓글 남기기