2009-01-20 2 views
20

내가 가지고있는이 기능 ...선도 제로 날짜 형식 C#을

private string dateConvert(string datDate) 
{ 
     System.Globalization.CultureInfo cultEnGb = new System.Globalization.CultureInfo("en-GB"); 
     System.Globalization.CultureInfo cultEnUs = new System.Globalization.CultureInfo("en-US"); 

     DateTime dtGb = Convert.ToDateTime(datDate, cultEnGb.DateTimeFormat); 
     datDate = dtGb.ToString(cultEnUs.DateTimeFormat.ShortDatePattern); 

     return datDate; 
} 

하지만 낮은 자리에 여전히 앞에 0 (1-9)와 원하는 그래서 날짜가 2009년 11월 9일이다 (mm -dd-yyyy) ...

지금 id를 사용하는 경우 string.Format ("{0 : d}", dateVar) 변환시 어떻게해야합니까?

***** 솔루션 *****

(렌더링 것 즉 하나의) 아래의 대답의 약간 수정 된 버전을 사용합니다.

Convert.ToDateTime(datDate).ToString("MM-dd-yyyy"); 
+1

, 당신은 당신이 사용자에게 다시 그것을 제시해야 할 때까지 날짜 값으로 유지 한 후이를 분석하고하지 않을 이유가 있나요? –

+1

우리가 사용하는 타사 응용 프로그램의 요구 사항을 충족하는 딥 링크를 생성합니다. 이 링크는 파트너가 쉽게 연결할 수 있도록 해주는 큰 스크립트의 일부입니다. English Company, 인도 개발자, 미국 날짜 형식. 그림을 이동. –

답변

42
return dateTimeValue.ToString("MM-dd-yyyy"); 
+2

동의 - http://msdn.microsoft.com/en-us/library/system.datetime.toshortdatestring(VS.85).aspx EN-US의 ShortDatePattern은 "M/d/yyyy"이며, 선행 0을 사용하고 "/"가 아닌 분리 자로 "/"를 사용하십시오. –

+0

@Zhaph : 날짜가 재분석되어 URL에 전달되므로 분리가 필요합니다. –

+1

이것은 내 목적을 위해 (전체적으로) 작동하지 않았지만 그것을 수정했습니다 ... Convert.ToDateTime (datDate) .ToString ("MM-dd-yyyy"); 치료를했습니다. 감사합니다 –

2

당신은 당신이 변환을 수행 한 후 string.Format는 사용할 수 없습니다? 어리석은 질문을 return string.Format("{0:d}", datDate);

+0

그게 내가 추측하지만 입력 20-03-2009 생산 3-20-2009 –

+0

예, 무슨 생각을 몰라, Mehrdad의 대답은 작동해야 하나입니다 –