datetime.parse 및 특정 형식으로 작동하게 만들기


141

XML 파일에서 날짜 형식으로 돌아 오는 형식이 있습니다.

20080916 11:02

에서와 같이

yyyymm hh : ss

datetime.parse 함수를 사용하여 어떻게 얻을 수 있습니까? 즉 오류없이 구문 분석 하시겠습니까? 건배

답변:


246
DateTime.ParseExact(input,"yyyyMMdd HH:mm",null);

분이 초가 아닌 시간을 따랐다 고 가정한다고 가정하면 약간 혼란 스러울 수 있습니다.

ParseExact 문서는 당신이 구문 분석이 자동으로 유니버설 시간 또는 그런 일을 변환해야 할 경우에, 다른 오버로드를 자세히 설명합니다.

@ Joel Coehoorn이 언급 했듯이 TryParseExact 를 사용하는 옵션도 있습니다.이 옵션은 작업의 성공 또는 실패를 나타내는 부울 값을 반환합니다. 여전히 .Net 1.1을 사용하고 있으므로 종종이 값을 잊어 버립니다.

다른 형식을 구문 분석해야하는 경우 표준 DateTime 형식 문자열을 확인할 수 있습니다 .


11
잊지 마십시오 DateTime.TryParseExact ()
Joel Coehoorn

또한 표준 Xml에는 고유 한 매우 구체적인 DateTime 형식이 있으며 .Net Xml 도구는 읽을 수 있어야합니다.
Joel Coehoorn

이 경우 마지막 매개 변수는 null로 작동하지만이 CultureInfo.InvariantCulture를 찾는 사람에게는 날짜 시간이 "1823/01/01"과 같은 경우 문제가 발생할 수 있습니다.
Todilo

@JoelCoehoorn standard XML specific DateTime format?
Kiquenet

10

팁 주셔서 감사합니다, 나는 이것을 사용하여 내 날짜 "20071122"를 파싱하고 datetimestyles를 추가해야했으며 아무것도 사용하지 않았으며 효과가있었습니다.

DateTime dt = DateTime.MinValue;

DateTime.TryParseExact("20071122", "yyyyMMdd", null,System.Globalization.DateTimeStyles.None, out dt);
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.