본문 바로가기
IT-개발,DB

[ASP.NET] CultureInfo와 DateTimeFormatInfo로 국가별,형식별 날짜를 출력하자

by SB리치퍼슨 2010. 8. 20.

네임스페이스:  :Track('ctl00_rs1_mainContentContainer_ctl00|ctl00_rs1_mainContentContainer_ctl03',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.aspx">System.Globalization
.NET Framework 클래스 라이브러리
DateTimeFormatInfo 클래스
[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DateTimeFormatInfo : ICloneable, 
    IFormatProvider

 

이 클래스에는 날짜 패턴, 시간 패턴 및 AM/PM 지정자와 같은 정보가 들어 있습니다.

특정 문화권에 대한 DateTimeFormatInfo를 만들려면 응용 프로그램에서 해당 문화권에 대한 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl72',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.aspx">CultureInfo를 만든 다음 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl73',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.datetimeformat.aspx">CultureInfo..::.DateTimeFormat 속성을 검색합니다. 현재 스레드의 문화권에 대한 DateTimeFormatInfo를 만들려면 응용 프로그램에서 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl75',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.currentinfo.aspx">CurrentInfo 속성을 사용해야 합니다. 고정 문화권에 대한 DateTimeFormatInfo를 만들려면 응용 프로그램에서 읽기 전용 버전의 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl76',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.invariantinfo.aspx">InvariantInfo 속성 또는 쓰기 가능한 버전의 DateTimeFormatInfo 생성자를 사용합니다. 중립 문화권에 대한 DateTimeFormatInfo를 만들 수 없습니다.

사용자는 제어판의 국가 및 언어 옵션을 통해 Windows의 현재 문화권과 연결된 값의 일부를 재정의할 수 있습니다. 예를 들어, 날짜를 다른 형식으로 표시하거나 해당 문화권의 기본 통화 단위가 아닌 다른 통화 단위를 사용할 수 있습니다. :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl77',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.useuseroverride.aspx">CultureInfo..::.UseUserOverride 속성을 true로 설정한 경우 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl79',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.datetimeformat.aspx">CultureInfo..::.DateTimeFormat 인스턴스, :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl81',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.numberformat.aspx">CultureInfo..::.NumberFormat 인스턴스 및 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl83',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.textinfo.aspx">CultureInfo..::.TextInfo 인스턴스의 속성 또한 사용자 설정에서 검색됩니다. 사용자 설정이 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl85',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.aspx">CultureInfo에 연결된 문화권과 호환되지 않는 경우(예: 선택한 달력이 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl86',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.optionalcalendars.aspx">OptionalCalendars에서 나타내는 달력 중 하나가 아닌 경우) 메서드의 결과와 속성 값은 정의되지 않습니다.

.NET Framework 버전 2.0 이전에서는 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl87',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.cultureinfo.useuseroverride.aspx">CultureInfo..::.UseUserOverride 속성이 true로 설정된 경우 사용자가 재정의할 수 있는 속성에 처음으로 액세스한 경우에만 개체에서 해당 속성을 읽습니다. DateTimeFormatInfo에 사용자가 재정의할 수 있는 속성이 둘 이상 있으므로 "초기화 지연"을 사용하면 응용 프로그램에서 한 속성에 액세스한 다음 사용자가 다른 문화권으로 변경하거나 제어판의 국가 및 언어 옵션을 통해 현재 사용자 문화권의 속성을 재정의한 후 응용 프로그램에서 다른 속성에 액세스할 때 이러한 속성이 일치하지 않게 될 수 있습니다. 예를 들어 이와 같은 순서로 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl89',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.longdatepattern.aspx">LongDatePattern에 액세스한 다음 사용자가 제어판에서 패턴을 변경한 후 다시 액세스하면 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl90',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.shortdatepattern.aspx">ShortDatePattern에 새 설정이 적용됩니다. 사용자가 특정 패턴을 재정의하는 대신 다른 사용자 문화권을 선택하는 경우에도 이와 유사한 불일치가 발생할 수 있습니다.

.NET Framework 버전 2.0 이상에서 DateTimeFormatInfo는 이 "초기화 지연"을 사용하지 않고 생성될 때 사용자가 재정할 수 있는 속성을 모두 읽습니다. 개체 만들기도 사용자 재정의 프로세스도 모두 원자성이 아니고 개체를 만드는 중에 관련 값이 변경될 수 있으므로 여전히 취약한 부분이 있지만 이는 매우 드문 경우입니다.

이 변경 사항은 serialization의 경우에 특히 중요합니다. ..NET Framework 버전 2.0 이상에서는 serialization이 발생되는 시간까지 액세스되는 설정뿐 아니라 재정의 가능한 모든 설정이 유지됩니다.

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl91',this);" href="http://msdn.microsoft.com/ko-kr/library/system.datetime.aspx">DateTime 값의 형식은 DateTimeFormatInfo 속성에 저장된 표준 또는 사용자 지정 패턴을 사용하여 지정됩니다.

응용 프로그램에서는 쓰기 가능한 DateTimeFormatInfo 개체의 관련 속성을 설정하여 표준 패턴을 사용자 지정 패턴으로 대체할 수 있습니다. :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl92',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.isreadonly.aspx">IsReadOnly 개체가 쓰기 가능한지 확인하려면 응용 프로그램에서 DateTimeFormatInfo 속성을 사용해야 합니다.

다음 표에서는 DateTimeFormatInfo 속성과 관련된 표준 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl93',this);" href="http://msdn.microsoft.com/ko-kr/library/system.datetime.aspx">DateTime 형식 패턴을 보여 줍니다. 자세한 내용은 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl94',this);" href="http://msdn.microsoft.com/ko-kr/library/az4se3k1.aspx">표준 날짜 및 시간 형식 문자열을 참조하십시오.

형식 패턴

관련 속성/설명

d

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl95',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.shortdatepattern.aspx">ShortDatePattern

D

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl96',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.longdatepattern.aspx">LongDatePattern

f

전체 날짜 및 시간(자세한 날짜와 간단한 시간)

F

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl97',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.fulldatetimepattern.aspx">FullDateTimePattern(자세한 날짜와 자세한 시간)

g

일반(간단한 날짜와 간단한 시간)

G

일반(간단한 날짜와 자세한 시간)

m, M

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl98',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.monthdaypattern.aspx">MonthDayPattern

o, O

라운드트립 날짜/시간 패턴. 이 형식 패턴을 사용하면 형식 지정 또는 구문 분석 작업을 할 때 항상 고정 문화권이 사용됩니다.

r, R

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl99',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.rfc1123pattern.aspx">RFC1123Pattern. 이 형식 패턴을 사용하면 형식 지정 및 구문 분석 작업을 할 때 항상 고정 문화권이 사용됩니다.

s

지역 시간을 사용한 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl100',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.sortabledatetimepattern.aspx">SortableDateTimePattern(ISO 8601 기반). 이 형식 패턴을 사용하면 형식 지정 또는 구문 분석 작업을 할 때 항상 고정 문화권이 사용됩니다.

t

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl101',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.shorttimepattern.aspx">ShortTimePattern

T

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl102',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.longtimepattern.aspx">LongTimePattern

u

세계 표준시 표시 형식을 사용한 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl103',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.universalsortabledatetimepattern.aspx">UniversalSortableDateTimePattern. 이 형식 패턴을 사용하면 형식 지정 또는 구문 분석 작업을 할 때 항상 고정 문화권이 사용됩니다

U

지역 표준시를 사용한 전체 날짜 및 시간(자세한 날짜와 자세한 시간)

y, Y

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl104',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.yearmonthpattern.aspx">YearMonthPattern

다음 표에서는 사용자 지정 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl105',this);" href="http://msdn.microsoft.com/ko-kr/library/system.datetime.aspx">DateTime 형식 패턴 및 해당 동작을 보여 줍니다. 자세한 내용은 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl106',this);" href="http://msdn.microsoft.com/ko-kr/library/8kb3ddd4.aspx">사용자 지정 날짜 및 시간 형식 문자열을 참조하십시오.

형식 패턴

설명

d, %d

날짜. 한 자리로 된 날짜 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%d"를 지정합니다.

dd

날짜. 한 자리로 된 날짜 앞에는 0이 옵니다.

ddd

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl107',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.abbreviateddaynames.aspx">AbbreviatedDayNames에 정의된 약식 요일 이름

dddd

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl108',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.daynames.aspx">DayNames에 정의된 자세한 요일 이름

f, %f

한 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%f"를 지정합니다.

ff

두 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

fff

세 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

ffff

네 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

fffff

다섯 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

ffffff

여섯 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

fffffff

일곱 자리 정밀도에서 초의 소수 부분입니다. 나머지 자릿수는 잘립니다.

F, %F

초의 소수 부분에 대한 최대 유효 자릿수를 표시합니다. 이 자릿수가 0이면 아무 것도 표시되지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%F"를 지정합니다.

FF

초의 소수 부분에 대한 최대 유효 자릿수를 2개로 표시합니다. 그러나 후행 0이나 2개의 0으로 된 숫자는 표시되지 않습니다.

FFF

초의 소수 부분에 대한 최대 유효 자릿수를 3개로 표시합니다. 그러나 후행 0이나 3개의 0으로 된 숫자는 표시되지 않습니다.

FFFF

초의 소수 부분에 대한 최대 유효 자릿수를 4개로 표시합니다. 그러나 후행 0이나 4개의 0으로 된 숫자는 표시되지 않습니다.

FFFFF

초의 소수 부분에 대한 최대 유효 자릿수를 5개로 표시합니다. 그러나 후행 0이나 5개의 0으로 된 숫자는 표시되지 않습니다.

FFFFFF

초의 소수 부분에 대한 최대 유효 자릿수를 6개로 표시합니다. 그러나 후행 0이나 6개의 0으로 된 숫자는 표시되지 않습니다.

FFFFFFF

초의 소수 부분에 대한 최대 유효 자릿수를 7개로 표시합니다. 그러나 후행 0이나 7개의 0으로 된 숫자는 표시되지 않습니다.

gg

서기. 형식이 지정될 날짜에 연관된 서기 문자열이 없는 경우 이 패턴은 무시됩니다.

h, %h

12시간제 시간. 한 자리로 된 시 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%h"를 지정합니다.

hh

12시간제 시간. 한 자리로 된 시 앞에는 0이 옵니다.

H, %H

24시간제 시간. 한 자리로 된 시 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%H"를 지정합니다.

HH

24시간제 시간. 한 자리로 된 시 앞에는 0이 옵니다.

K

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl109',this);" href="http://msdn.microsoft.com/ko-kr/library/system.datetime.kind.aspx">Kind 속성의 여러 값(로컬, UTC 또는 지정되지 않음)

m, %m

분. 한 자리로 된 분 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%m"을 지정합니다.

mm

분. 한 자리로 된 분 앞에는 0이 옵니다.

M, %M

숫자로 표현된 월. 한 자리로 된 달 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%M"을 지정합니다.

MM

숫자로 표현된 월. 한 자리로 된 달 앞에는 0이 옵니다.

MMM

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl110',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.abbreviatedmonthnames.aspx">AbbreviatedMonthNames에 정의된 약식 월 이름

MMMM

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl111',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.monthnames.aspx">MonthNames에 정의된 자세한 월 이름

s, %s

초. 한 자리로 된 초 앞에는 0이 오지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%s"를 지정합니다.

ss

초. 한 자리로 된 초 앞에는 0이 옵니다.

t, %t

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl112',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.amdesignator.aspx">AMDesignator 또는 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl113',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.pmdesignator.aspx">PMDesignator에 정의된 AM/PM 지정자의 첫 문자입니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%t"를 지정합니다.

tt

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl114',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.amdesignator.aspx">AMDesignator 또는 :Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl115',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.pmdesignator.aspx">PMDesignator에 정의된 AM/PM 지정자입니다. 응용 프로그램에서는 AM과 PM을 구분하는 데 필요한 해당 언어의 이 형식 패턴을 사용해야 합니다. 예를 들어 일본어 AM/PM 지정자의 경우 첫 번째 문자가 아니라 두 번째 문자가 서로 다릅니다.

y, %y

세기 표시 제외 연도. 세기 부분을 제외한 연도가 10보다 작은 경우 연도 앞에 0이 붙지 않습니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%y"를 지정합니다.

yy

세기 표시 제외 연도. 세기 부분을 제외한 연도가 10보다 작은 경우 연도 앞에 0이 붙습니다.

yyy

세 자리 연도. 연도가 100보다 작으면 연도 앞에 0이 붙습니다.

yyyy

세기를 포함한 네 자리 또는 다섯 자리 연도(사용하는 달력에 따라 다름). 네 자리 숫자를 만들기 위해 앞에 0을 채웁니다. 태국 불교식과 한국식 달력에서는 다섯 자리 연도를 사용합니다. 사용자가 "yyyy" 패턴을 선택하면 다섯 자리 숫자를 사용하는 달력에서 앞에 0이 없이 모두 숫자로만 구성된 다섯 자리가 표시됩니다. 예외: 일본식 달력과 대만식 달력에서는 항상 "yy"가 선택된 것처럼 동작합니다.

yyyyy

다섯 자리 연도. 다섯 자리 숫자를 만들기 위해 앞에 0을 채웁니다. 예외: 일본식 달력과 대만식 달력에서는 항상 "yy"가 선택된 것처럼 동작합니다.

yyyyyy

여섯 자리 연도. 여섯 자리 숫자를 만들기 위해 앞에 0을 채웁니다. 예외: 일본식 달력과 대만식 달력에서는 항상 "yy"가 선택된 것처럼 동작합니다. 앞에 0이 더 채워진 보다 긴 "y" 문자열을 사용하여 패턴이 계속될 수 있습니다.

z, %z

시간대 오프셋("+" 또는 "-" 뒤에 시간만 옴)입니다. 한 자리로 된 시 앞에는 0이 오지 않습니다. 예를 들어, 태평양 표준시는 "-8"입니다. 응용 프로그램에서는 형식 패턴이 다른 형식 패턴과 결합되지 않을 경우 "%z"를 지정합니다.

zz

시간대 오프셋("+" 또는 "-" 뒤에 시간만 옴)입니다. 한 자리로 된 시 앞에는 0이 옵니다. 예를 들어, 태평양 표준시는 "-08"입니다.

zzz

자세한 시간대 오프셋("+" 또는 "-" 뒤에 시간과 분이 옴)입니다. 한 자리로 된 시간과 분 앞에는 0이 옵니다. 예를 들어, 태평양 표준시는 "-08:00"입니다.

:

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl116',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.timeseparator.aspx">TimeSeparator에 정의된 기본 시간 구분 문자입니다.

/

:Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl117',this);" href="http://msdn.microsoft.com/ko-kr/library/system.globalization.datetimeformatinfo.dateseparator.aspx">DateSeparator에 정의된 기본 날짜 구분 문자입니다.

% c

여기서 c는 단독으로 사용된 경우의 형식 패턴 문자입니다. "d", "f", "F", "h", "m", "s", "t", "y", "z", "H" 또는 "M" 형식 패턴을 단독으로 사용하려면 응용 프로그램에서 "%d", "%f", "%F", "%h", "%m", "%s", "%t", "%y", "%z", "%H" 또는 "%M"을 지정합니다.

형식 패턴 문자가 리터럴 문자나 다른 형식 패턴 문자와 조합되어 사용될 경우 "%" 문자를 생략할 수 있습니다.

\ c

여기서 c는 임의의 문자입니다. 문자를 그대로 표시합니다. 백슬래시 문자를 표시하려면 "\\"를 사용해야 합니다.

위의 두 번째 표에 나열된 형식 패턴을 사용해야만 사용자 지정 패턴을 만들 수 있으며, 첫 번째 표에 나열된 표준 형식 패턴을 사용하면 표준 패턴만 만들 수 있습니다. 사용자 지정 패턴은 다음처럼 최소한 두 문자 길이입니다.

 

  • DateTime.ToString("d"):Track('ctl00_rs1_mainContentContainer_cpe283257_c|ctl00_rs1_mainContentContainer_ctl118',this);" href="http://msdn.microsoft.com/ko-kr/library/system.datetime.aspx">DateTime 값을 반환합니다. "d"는 간단한 표준 날짜 패턴입니다.

  • DateTime.ToString("%d")는 일을 반환합니다. "%d"는 사용자 지정 패턴입니다.

  • DateTime.ToString("d ")는 일과 그 다음에 공백 문자를 반환합니다. "d "는 사용자 지정 패턴입니다.

  •  

     

    다음 코드 예제에서는 en-US 문화권에 대해 서로 다른 형식 패턴을 출력합니다. 또한 해당 형식 패턴과 관련된 속성 값을 표시합니다.

     

     

     

    using System;
    using System.Globalization;


    public class SamplesDTFI  {

       public static void Main()  {

          // Creates and initializes a DateTimeFormatInfo associated with the en-US culture.
          DateTimeFormatInfo myDTFI = new CultureInfo( "en-US", false ).DateTimeFormat;

          // Creates a DateTime with the Gregorian date January 3, 2002 (year=2002, month=1, day=3).
          // The Gregorian calendar is the default calendar for the en-US culture.
          DateTime myDT = new DateTime( 2002, 1, 3 );

          // Displays the format pattern associated with each format character.
          Console.WriteLine( "FORMAT  en-US EXAMPLE" );
          Console.WriteLine( "CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY\n" );
          Console.WriteLine( "  d     {0}", myDT.ToString("d", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.ShortDatePattern, "(ShortDatePattern)" );
          Console.WriteLine( "  D     {0}", myDT.ToString("D", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.LongDatePattern, "(LongDatePattern)" );
          Console.WriteLine( "  f     {0}\n", myDT.ToString("f", myDTFI) );
          Console.WriteLine( "  F     {0}", myDT.ToString("F", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.FullDateTimePattern, "(FullDateTimePattern)" );
          Console.WriteLine( "  g     {0}\n", myDT.ToString("g", myDTFI) );
          Console.WriteLine( "  G     {0}\n", myDT.ToString("G", myDTFI) );
          Console.WriteLine( "  m     {0}", myDT.ToString("m", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.MonthDayPattern, "(MonthDayPattern)" );
          Console.WriteLine( "  M     {0}", myDT.ToString("M", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.MonthDayPattern, "(MonthDayPattern)" );
          Console.WriteLine( "  o     {0}\n", myDT.ToString("o", myDTFI) );
          Console.WriteLine( "  r     {0}", myDT.ToString("r", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.RFC1123Pattern, "(RFC1123Pattern)" );
          Console.WriteLine( "  R     {0}", myDT.ToString("R", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.RFC1123Pattern, "(RFC1123Pattern)" );
          Console.WriteLine( "  s     {0}", myDT.ToString("s", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.SortableDateTimePattern, "(SortableDateTimePattern)" );
          Console.WriteLine( "  t     {0}", myDT.ToString("t", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.ShortTimePattern, "(ShortTimePattern)" );
          Console.WriteLine( "  T     {0}", myDT.ToString("T", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.LongTimePattern, "(LongTimePattern)" );
          Console.WriteLine( "  u     {0}", myDT.ToString("u", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.UniversalSortableDateTimePattern, "(UniversalSortableDateTimePattern)" );
          Console.WriteLine( "  U     {0}\n", myDT.ToString("U", myDTFI) );
          Console.WriteLine( "  y     {0}", myDT.ToString("y", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.YearMonthPattern, "(YearMonthPattern)" );
          Console.WriteLine( "  Y     {0}", myDT.ToString("Y", myDTFI) );
          Console.WriteLine( "        {0} {1}\n", myDTFI.YearMonthPattern, "(YearMonthPattern)" );

       }

    }

    /*
    This code produces the following output.

    FORMAT  en-US EXAMPLE
    CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY

      d     1/3/2002
            M/d/yyyy (ShortDatePattern)

      D     Thursday, January 03, 2002
            dddd, MMMM dd, yyyy (LongDatePattern)

      f     Thursday, January 03, 2002 12:00 AM

      F     Thursday, January 03, 2002 12:00:00 AM
            dddd, MMMM dd, yyyy h:mm:ss tt (FullDateTimePattern)

      g     1/3/2002 12:00 AM

      G     1/3/2002 12:00:00 AM

      m     January 03
            MMMM dd (MonthDayPattern)

      M     January 03
            MMMM dd (MonthDayPattern)

      o     2002-01-03T00:00:00.0000000

      r     Thu, 03 Jan 2002 00:00:00 GMT
            ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

      R     Thu, 03 Jan 2002 00:00:00 GMT
            ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

      s     2002-01-03T00:00:00
            yyyy'-'MM'-'dd'T'HH':'mm':'ss (SortableDateTimePattern)

      t     12:00 AM
            h:mm tt (ShortTimePattern)

      T     12:00:00 AM
            h:mm:ss tt (LongTimePattern)

      u     2002-01-03 00:00:00Z
            yyyy'-'MM'-'dd HH':'mm':'ss'Z' (UniversalSortableDateTimePattern)

      U     Thursday, January 03, 2002 8:00:00 AM

      y     January, 2002
            MMMM, yyyy (YearMonthPattern)

      Y     January, 2002
            MMMM, yyyy (YearMonthPattern)

    */



    출처 : MSDN
    반응형

    댓글