DateTime 타입의 인스턴스로 시간값을 가지고 있을 때 ToString() 메소드를 이용해서 시간값을 여러가지 타입으로 출력할 수 있다. 월, 요일 값들을 일일이 변환해 주지 않아도 되는 편리함이 있다. 여기서 한 가지 더! 시간값을 지역 언어 설정값에 따라 지역 월, 요일 값들을 지역화 해서 출력해 주며 또한 년, 월, 일 출력 순서 또한 알맞게 변환해서 출력해 준다. 다국어 프로그래밍에 참조하면 시간을 많이 절약할 수 있을 것 같다.
[C#] public virtual string ToString( string format, IFormatProvider provider );
format 매개변수에 출력 포멧을 설정해주고, provider 매개변수에 지역 설정을 주면 된다. MSDN의 예제를 보면 다음과 같이 다양한 포멧으로 출력 가능하다.
/** Output. * * d :08/17/2000 * D :Thursday, August 17, 2000 * f :Thursday, August 17, 2000 16:32 * F :Thursday, August 17, 2000 16:32:32 * g :08/17/2000 16:32 * G :08/17/2000 16:32:32 * m :August 17 * r :Thu, 17 Aug 2000 23:32:32 GMT * s :2000-08-17T16:32:32 * t :16:32 * T :16:32:32 * u :2000-08-17 23:32:32Z * U :Thursday, August 17, 2000 23:32:32 * y :August, 2000 * dddd, MMMM dd yyyy :Thursday, August 17 2000 * ddd, MMM d "'"yy :Thu, Aug 17 '00 * dddd, MMMM dd :Thursday, August 17 * M/yy :8/00 * dd-MM-yy :17-08-00 */대단하다.
자세한 설명은 MSDN 참조 : http://msdn.microsoft.com/en-us/library/Aa326722
만약 스페인어에 해당하는 정보로 출력하자면 Provider 매개변수에 스페인어 CultureInfo 인스턴를 넘겨주면 된다.
Label1.Text = Now.ToString("D", New System.Globalization.CultureInfo("es-ES"))
대단하다.