2011年3月7日 星期一

自訂 字串轉日期 的格式

在一般文章常常看到的都是日期轉字串輸出..
但是如果是字串轉日期要接入程式中處理...就很不常見了..

DateTime類別中提供了ParseExact 方法,
能夠協助我們任何格式的日期字串轉換為DateTime物件..
例如  "2011:02:25 17:56:56"  這樣的字串,一般DateTime的Parse方法是轉不過的.
因為年月日之間的間隔符號為 " : ",所以無法用一般的方法來轉換.

所以可以使用以下的程式碼


   1: CultureInfo provider = CultureInfo.InvariantCulture;
   2: string dateString = "2011:02:25 17:56:56";
   3: string format = "yyyy:MM:dd HH:mm:ss";
   4: DateTime result = DateTime.ParseExact(dateString, format, provider);
   5: Console.WriteLine("{0} converts to {1}.", dateString, result.ToString());

該方法有三個參數

1. 日期字串,包含要轉換的日期和時間。

2. 格式化字串,定義轉換日期字串的所需格式。

        可使用標準 DateTime 格式模式與自訂的 DateTime 格式模式
        詳細資訊可參考DateTimeFormatInfo 類別

3. 格式化provider,提供關於日期字串的文化特性資訊。

        如果不使用,可以跟上述程式碼一樣,使用
        "CultureInfo.InvariantCulture"來取得與文化特性無關的文化特性物件

沒有留言:

張貼留言