Convert.ToDateTime 메서드는 지정된 값을 DateTime 형식으로 변환하는 데 사용됩니다. 문자열로 표현된 날짜를 실제 날짜·시간 객체로 바꿔야 할 때 가장 간단하게 활용할 수 있는 방법 중 하나입니다.
먼저 변환할 날짜 문자열을 준비해 보겠습니다.
string myDateString; myDateString = "09/09/2018";
이제 Convert.ToDateTime() 메서드를 사용해 이 문자열을 DateTime 값으로 변환해 보겠습니다.
DateTime result; result = Convert.ToDateTime(myDateString);
전체 예제 코드는 다음과 같습니다.
예제
using System;
public class Demo {
public static void Main() {
string myDateString;
DateTime result;
myDateString = "09/09/2018";
result = Convert.ToDateTime(myDateString);
Console.WriteLine("'{0}' converted to {1}", myDateString, result);
}
}
실행 결과
'09/09/2018' converted to 9/9/2018 12:00:00 AM
참고 사항
Convert.ToDateTime은 프로그램이 실행되는 환경의 문화권(culture) 설정에 따라 날짜 형식을 해석합니다. 예를 들어 "09/09/2018"이라는 문자열은 미국 문화권에서는 '9월 9일'로 인식되지만, 일부 유럽 문화권에서는 '9일 9월', 즉 같은 날짜라도 해석 순서가 다를 수 있습니다.
따라서 형식이 정해진 문자열을 다룰 때는 DateTime.ParseExact 또는 DateTimeOffset.ParseExact 메서드에 형식 지정자(format specifier)를 명시적으로 전달하는 편이 훨씬 안전하고 예측 가능한 결과를 보장합니다. 반대로 사용자 입력처럼 다양한 형식이 섞여 있을 가능성이 있다면 Convert.ToDateTime이나 DateTime.TryParse를 활용하는 것이 좋습니다.