2010-08-03 30 views
2

對於我正在開發的組件處理日期時間格式,存在以下問題。查找調用DateTime.ToString()時獲取的DateTimeFormat

string value = DateTime.Now.ToString(); // value = "8/3/2010 2:20:49 PM" 

如何找出value指日期格式 - >"M/d/yyyy h:mm:ss tt"

我希望在導出過程中存儲這些當前日期時間格式和導入過程中使用相同的。 DateTimeFormatInfo.CurrentInfoCultureInfo.CurrentCulture.DateTimeFormat中提供的各種apis不提供此信息。

我知道的一個解決方案是使用dt.ToString(「u」)以通用格式存儲和解析日期時間,但我很好奇我如何獲得上述格式。

回答

2

每文檔:

DateTime.ToString() 

此實例的值使用的一般格式說明,「G」格式化,作爲格式概述主題中描述。返回值與ToString ("G", null)返回的值相同。

繼文檔鏈接格式概述 - >日期和時間格式字符串 - >標準的DATETIME格式字符串得到我們

常規日期/時間模式(長時間)

顯示由空格分隔的短日期和長時間模式的組合。

所以,你想應該是的Thread.CurrentThread.CurrentCulture.DateTimeFormatShortDatePatternLongTimePattern部件組合獲得的格式。

1

如果您想要可靠地導入/導出DateTime,最好設置明確指定的使用格式,例如,使用不變的文化。

+0

是的。我正在使用它,但想知道我是否可以獲取當前的日期時間格式。 – 2010-08-03 07:44:29

+0

查看Kangkan的回答。當前文化的LongDatePattern和LongTimePattern屬性將爲您提供此信息。 – tdammers 2010-08-03 07:49:18

1

查看當前日期時間格式的Thread.CurrentThread.CurrentCulture.DateTimeFormat.LongDatePattern