2011年1月20日 星期四

[C#] 字串轉時間日期格式另一個選擇 DateTime.ParseExact

最近有個需求,需要將 類似 20100124223047 的字串轉換成 2010-01-24 22:30 的時間格式輸出

以前都是使用 DateTime.TryParseDateTime.Parse 混搭風來完成 客製化格式的需求,

在實際操作之後,發現事情並非如此單純,是否需要請出 李組長 來為案情解謎一下;

基於殺雞焉用牛刀法則,還是自己嘗試解決吧。

 

重新檢視 DateTime 類別方法,發現 DateTime.ParseExactDateTime.TryParseExact 似乎可以解決眼前的難題

首先我們來測試一下 原始字串是否可以順利轉換成時間日期格式

2011-01-21_104636

輸出結果

2011-01-21_102942 

其中

CultureInfo.InvariantCulture :取得與文化特性無關的 (不變的) CultureInfo

System.Globalization.DateTimeStyles.AllowWhiteSpaces :除非字串中任意位置的額外空白字元出現在 DateTimeFormatInfo 格式模式中,否則必須在剖析期間忽略這些空白字元。

 

很好,接下來我們來嘗試完整的寫法

2011-01-21_104548

 

輸出結果

2011-01-21_104713

HEMiDEMi 的標籤:,

沒有留言:

張貼留言