2011-12-20 82 views
3

我想知道DateTime.TryParseExact方法或具有dd/MM/yy作爲輸入的Convert.ToDateTime()的範圍格式。 像DateTime.TryParseExact或Convert.ToDateTime()的日期格式爲dd/MM/yy的範圍

DateTime.TryParseExact("01/07/05","dd/MM/yy", new CultureInfo("en-US"),DateTimeStyles.None, out dateValue) 


DateTime Time=Convert.ToDateTime("01/07/05"); 

如果我會給35年1月7日,它將不知道我是否在談論1835,1935,2035。所以它有一定的範圍。任何機構都會通過一些參考來了解其響應情況?

由於

回答

6

如果你問一個兩位數年份是如何解釋的控制,這取決於文化的TwoDigitYearMax財產

依賴在計算機的設置上。要查看的設置,請訪問:

  1. 控制面板 - >區域和語言選項
  2. 自定義(XP)或其它設置(Win7的)
  3. 日期標籤。關於如何解釋兩位數字的年份有一個設置。在我的電腦它解釋爲1930年到2029年
0

DateTime範圍是DateTime.MinValue之間(59.9999999,12月31日,999923:59)(00:1月1日,00.0000000,0001:00)DateTime.MaxValue到。

http://msdn.microsoft.com/en-us/library/system.datetime.minvalue.aspx

http://msdn.microsoft.com/en-us/library/system.datetime.maxvalue.aspx

默認世紀由http://msdn.microsoft.com/en-us/library/system.globalization.calendar.twodigityearmax.aspx

+1

我提到了dd/MM/yy格式 – Zaksh 2011-12-20 13:55:50

+0

已編輯 - 查看最後一個鏈接 – 2011-12-20 13:58:04

0

間認爲它會假設當前的[編輯]世紀(未千年)(在系統時鐘設定)從00到29

+0

它沒有。你也是指世紀。 – Ray 2011-12-20 14:00:40

3

的年值會給你2000年至2029年,從30到99的數值會讓你聽到1930年到1999年的數字。

數值new CultureInfo("en-US").DateTimeFormat.Calendar.TwoDigitYearMax包含2029,它決定了突破點。

+0

也許在你的系統上。這實際上是一個電腦設置。 – Ray 2011-12-20 14:02:52