日期轉換(用DateTime的ParseExact方法解析特殊的日期時間)


今天遇到一個特別的需求,需要從下面的字符串中轉換成一個DateTime對象:

  [07-13 15:50:42]

主要問題是這個時間不是標准的時間,而是自定義的格式,即開頭是月-日,然后是時間。

使用最常用的DateTime.Parse(string dateTimeStr)無法轉換,問題就在於這個自定義格式上。

 

搜索了之后,我找到了下面的方法:

public static DateTime ParseExact(
	string s,
	string format,
	IFormatProvider provider
)

使用例子如下:

var dateTimeStr = "07-13 15:50:42";
var dateTime = DateTime.ParseExact(dateTimeStr, "MM-dd HH:mm:ss", CultureInfo.InvariantCulture);

使用效果如下:

image

 

例子2:

MessageBox.Show(DateTime.ParseExact("07131550", "MMddHHmm", System.Globalization.CultureInfo.CurrentCulture).ToString());

結果:2014/7/13 15:50:00

 

如果你使用的其它特殊語言,比如美國或者日文啥的,最后的參數你可能需要獲取下對應的Culture。

注意:

 

參考資料

DateTime.ParseExact Method (String, String, IFormatProvider)

http://msdn.microsoft.com/en-us/library/w2sa9yss.aspx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM