簡體   English   中英

Windows 7中的DateTime.TryParse()失敗

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM