2012-10-04 2 views
0

TimeSpan.ParseExact 메서드를 사용하여 시간 범위를 구문 분석합니다. 그러나 다음과 같은 이유로 실패하고 예외가 throw되는 이유는 무엇입니까? MSDN에 Custom Date and Time Format Strings 문서에서 판단겉으로보기에는 정확한 시간 범위를 구문 분석 할 때 예외가 throw됩니다.

string time = "23:10:00"; 
string format = "HH:mm:ss"; 
TimeSpan timeSpan = TimeSpan.ParseExact(time, format, CultureInfo.InvariantCulture); 

는 포맷이 입력 문자열 맞습니다. 어떤 아이디어?

+0

이것은 C++처럼 보이지 않습니다. C# 또는 CLI 태그가 있어야합니까? –

답변

4

당신은 사용자 정의 DateTime 형식 지정자에 링크 -하지만 당신은, 당신은 TimeSpan에 구문 분석하고 DateTime에 구문 분석하지 않는, 그래서 당신이 custom TimeSpan format specifiers 필요 - 대신에 "HH"의 "HH"사용하는 것을 의미한다. 또한, 문서에 따라, 당신은 콜론을 탈출해야 - 그래서 당신은 정말로 원하는 :

string format = @"hh\:mm\:ss"; 

나는이 샘플 값으로 작동하는지 확인했습니다.

+0

남자, 형식 문자열이 다른 이유는 무엇입니까? 이것은 우리 코드에서 심각한 문제를 일으킬 것입니다. 다시 한번 고마워. – Steztric

+0

@Steztric : 'TimeSpan' 형식과'DateTime' 형식을 서로 바꿀 수 있다고 생각하면 코드에 문제가 발생해야합니다. 그들은 매우 다른 유형이므로 형식을 다르게 처리해야합니다. –

관련 문제