[英]DateTime.TryParse() fails in Windows 7
當我們將區域設置更改為意大利語時, DateTime.TryParse
在Windows 7中失敗。我甚至嘗試了TryParseExact
但沒有運氣。 有沒有人對此有任何想法或遇到過這種情況?
代碼是這樣的:
string[] formats = {"M/d/yyyy h:mm:ss tt", "M/d/yyyy h:mm tt", "MM/dd/yyyy hh:mm:ss", "M/d/yyyy h:mm:ss", "M/d/yyyy hh:mm tt", "M/d/yyyy hh tt", "M/d/yyyy h:mm", "M/d/yyyy h:mm", "MM/dd/yyyy hh:mm", "M/dd/yyyy hh:mm", "dd/MM/yyyy HH:mm"};
if (DateTime.TryParseExact(cb.Text, formats, CultureInfo.InVariantCulture, DateTimeStyles.AllowLeadingWhite, out date_and_time))
但它返回false。
要么
甚至試過:
if (DateTime.TryParse(cb.Text, CultureInfo.InvariantCulture, DateTimeStyles.None,out date_and_time) == true)`
cb.Text是一個String,它包含字符串表示形式的DateTime。
嘗試使用CreateSpecificCulture方法將Thread Culture設置為Italian Culture
。
請在此處查看文化列表。
您是否嘗試過使用中性CultureInfo調用它?
像這樣
DateTime parsed;
if(DateTime.TryParse("2010-03-09", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed))
Console.WriteLine(parsed)
或者對於TryParseExact
DateTime.TryParseExact("2010-03-09", "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed)
在意大利語中,時間分隔符標記被解析為。 而不是 :
嘗試使用單引號轉義時間分隔符標記,例如:
"M/d/yyyy h':'mm':'ss tt"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.