IT

파일 이름 또는 확장명에 사용할 수있는 DateTime.ToString () 형식?

lottoking 2020. 9. 6. 10:22
반응형

파일 이름 또는 확장명에 사용할 수있는 DateTime.ToString () 형식?


파일이 생성 될 때 파일 이름에 타임 스탬프를 추가하고 싶지만 내가 시도한 대부분의 DateTime 메서드는 공백과 슬래시로 처리를 출력합니다. 예를 들면 :

Debug.WriteLine(DateTime.Now.ToString()); // <-- 9/19/2012 1:41:46 PM
Debug.WriteLine(DateTime.Now.ToShortTimeString()); // <-- 1:41 PM
Debug.WriteLine(DateTime.Now.ToShortDateString()); // <-- 9/19/2012
Debug.WriteLine(DateTime.Now.ToFileTime()); // <-- 129925501061462806

ToFileTime()작동하지만 정확히 사람이 읽을 수있는 것은 아닙니다. 파일 이름과 날짜에 사용할 수있는 날짜와 시간이있는 사람이 읽을 수있는 날짜와 시간 스탬프로 형식을 지정해야합니까? 서열하게는 2011-19-9--13-45-30무엇입니까?


사용할 수 있습니다 :

DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss");

구분 기호없이 ISO 8601 형식을 사용합니다 .

DateTime.Now.ToString("yyyyMMddTHHmmss")

DateTime.Parse를 사용할 수있는 방법을 사용할 수 있습니다.

DateTime.Now.ToString("s").Replace(":", ".") // <-- 2016-10-25T16.50.35

구문 분석을 원할 때 간단히 Replace 호출을 되돌릴 수 있습니다. 이렇게하면 yymmdd 항목을 입력하거나 DateTime.Parse에서 허용하는 형식을 추측 할 필요가 없습니다.


가장 일반적으로 사용되는 시간 형식 지정자 목록은 다음과 가변됩니다.,

dd -01부터 31까지의 날짜 입니다.

MM - 01 ~ 12.

YYYY - 올해 네 자리 숫자로.

HH - 시간 하는 사용하여 12 시간 01 내지 12 시계.

mm - 00 59.

SS - 00 내지 59.

HH - 시간 하는 사용하여 24 시간 00로부터 23 클록.

tt - AM / PM 지정자.

위의 내용을 사용하여 파일 이름에 한 이름을 형성 할 수 있습니다.

여기에 예제를 제공했습니다.

string fileName = "fileName_" + DateTime.Now.ToString("MM-dd-yyyy_hh-mm-ss-tt") + ".pdf";

또는

기호를 사용하지 않는 방법이 방법도 시도해 볼 수 있습니다 ..,

string fileName = "fileName_" + DateTime.Now.ToString("MMddyyyyhhmmsstt") + ".pdf";

이것이 현재 또는 미래의 누군가에게 도움이되기를 바랍니다. :)


개인적으로 나는 이런 식으로 좋아합니다.

DateTime.Now.ToString("yyyy-MM-dd HH.mm.ss")

날짜와 시간을 구분하기 때문입니다.


시도 할 수 있습니다.

var result = DateTime.Now.ToString("yyyy-MM-d--HH-mm-ss");

다음과 같이 파일 경로를 만들 수 있습니다.

string path = "fileName-"+DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss") + ".txt";

사용하여 보간 암호화 및 형식 지정 튼 :

var filename = $"{DateTime.Now:yyyy.dd.M HH-mm-ss}"

또는 미국에 있지 않은 경우 :

var filename = $"{DateTime.Now:yyyy.M.dd HH-mm-ss}"

이 기능은 C # 6 이상의 언어 버전에서 사용할 수 있습니다.


이 시도 :

time.ToLongDateString()

출력 : "2018 년 8 월 24 일 금요일"

또는 형식을 사용하십시오.

time.ToString("yyyy_MM_dd")

출력 : "2018_08_24"

참고 URL : https://stackoverflow.com/questions/12500091/datetime-tostring-format-that-can-be-used-in-a-filename-or-extension

반응형