我需要知道確切的日期格式,將持續字符串16-Aug-78 12:00:00 AM
。我已經嘗試過各種字符串,如「ss-MMM-yy hh:mm:ss」。有什麼辦法可以找到它轉換爲任何通用格式。我正在使用CultureInfo.InvariantCulture
類。如何查找日期字符串的確切格式?
2
A
回答
2
您的字符串格式不正確。它必須與您的字符串格式完全匹配。您可以改用dd-MMM-yy hh:mm:ss tt
格式。
這裏是LINQPad的一個例子。
string s = "16-Aug-78 12:00:00 AM";
var date = DateTime.ParseExact(s, "dd-MMM-yy hh:mm:ss tt",
CultureInfo.InvariantCulture);
date.Dump();
或者,由於dd-MMM-yy hh:mm:ss tt
是InvariantCulture
一個非標準的日期和時間格式,可以直接DateTime.Parse
方法等;
string s = "16-Aug-78 12:00:00 AM";
var date = DateTime.Parse(s, CultureInfo.InvariantCulture);
date.Dump();
這裏一個demonstration
。
有沒有辦法找到它轉換爲任何一般格式?
除了創建自己的格式之外,沒有辦法獲取字符串的格式。只有你可以確切地知道你的字符串格式是什麼,電腦不能。
例如; 01/02/2014
可以是2014年2月1日或2014年1月2日取決於您可以解析它的自定義格式。
1
你有錯誤的格式字符串,你使用ss的一天它應該是dd。這篇文章Custom Date and Time Format Strings解釋了您需要的自定義格式。
使用
"dd-MMM-yy hh:mm:ss tt"
而不是
"ss-MMM-yy hh:mm:ss"
您可以使用DateTime.ParseExact解析字符串。
DateTime dt = DateTime.ParseExact("16-Aug-78 12:00:00 AM", "dd-MMM-yy hh:mm:ss tt", CultureInfo.InvariantCulture, DateTimeStyles.None);
0
嘗試如下
var dstring = "16-Aug-78 12:00:00 AM";
DateTime result;
var matchingCulture = CultureInfo.GetCultures(CultureTypes.AllCultures).FirstOrDefault(ci => DateTime.TryParse(dstring, ci, DateTimeStyles.None, out result))
0
您可以DateTime.TryParseExact()嘗試:
string strDate = "16-Aug-78 12:00:00 AM";
DateTime datDate;
if(DateTime.TryParseExact(strDate , new string[] {"dd-MMM-yy hh:mm:ss tt" },
System.Globalization.CultureInfo.InvariantCulture,
System.Globalization.DateTimeStyles.None, out datDate))
{
Console.WriteLine(datDate);
}
else
{
Console.WriteLine("Error in datetime format");
}
相關問題
- 1. 字符串日期格式
- 2. 格式字符串日期
- 3. 日期字符串格式
- 4. 如何在不同的字符串中查找日期並將其轉換爲正確的日期格式?
- 5. 如何以字符串格式的日期正確地訂購?
- 6. 如何找到一個字符串的日期格式
- 7. 如何找到兩個日期是字符串格式的Android
- 8. 如何將日期字符串格式化爲期望的日期格式
- 9. 如何確定字符串是否爲日期格式?
- 10. 如何從字符串中確定日期格式?
- 11. 如何在PHP中檢查字符串的日期格式?
- 12. Excel-VBA:從字符串中查找和替換日期格式
- 13. 使用jQuery查找並重新格式化日期字符串
- 14. 如何格式化另一種格式的字符串日期?
- 15. 將字符串以確切的方式轉換爲日期
- 16. 如何將MySQL日期格式更改爲字符串日期
- 17. 如何從日期字符串中獲取日期格式?
- 18. 如何從日期字符串格式獲取日期對象
- 19. 如何將日期字符串轉換爲sql日期格式
- 20. 查找字符串中的確切字符串
- 21. 格式的字符串等的日期
- 22. Javascript格式日期從字符串到日期格式
- 23. VB.Net日期字符串格式模式
- 24. 如何測試日期格式字符串是否是Oracle中的有效日期格式字符串
- 25. 如何將此字符串格式化爲日期格式?
- 26. 如何使用javascript在字符串中查找確切的子字符串
- 27. 字符串的日期格式
- 28. 日期時間格式的字符串
- 29. Smarty中的日期格式字符串
- 30. Android:字符串中的日期格式
謝謝。它幫助了我。但是有可能嘗試使用幾種優先格式,然後嘗試使用哪種格式來獲得確切的價值。我已經通過嵌套try catch來完成它。有沒有更好的方法。 我注意到我的格式是錯誤的。 – pcbabu
@pcbabu不客氣。 'DateTime.TryParseExact'方法[有一個重載](http://msdn.microsoft.com/en-us/library/h9b85w22%28v=vs.110%29.aspx),它將格式視爲_string array_。這意味着您可以在您的方法中提供多個字符串格式。如果你的字符串匹配你的一種格式,這個方法返回'true'。 –