2010-03-09 5 views
3

DateTime.TryParse échoue dans Windows 7, lorsque nous modifions les paramètres régionaux en italien.J'ai même essayé TryParseExact mais sans succès. Est-ce que quelqu'un a une idée à ce sujet ou est tombé sur ce type de scénario?DateTime.TryParse() échoue dans Windows 7

code est quelque chose comme ceci:

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)) 

mais il retourne faux.

ou

même essayé:

if (DateTime.TryParse(cb.Text, CultureInfo.InvariantCulture, DateTimeStyles.None,out date_and_time) == true)` 

cb.Text est une chaîne qui contient le DateTime en représentation de chaîne.

+0

Un exemple du code que vous utilisez serait utile. – btlog

+0

Pouvez-vous ajouter un peu plus de détails sur la façon dont cela échoue? – Paddy

+2

Donnez un exemple de la date que vous essayez d'analyser et votre code pour l'analyser. J'ai utilisé Win7 depuis longtemps et n'ai jamais eu de problème avec l'analyse de DateTime. Je soupçonne que votre texte de date est dans un format de culture/format personnalisé et vous essayez de l'analyser en utilisant cultureinfo par défaut qui ne peut pas analyser le texte de la date –

Répondre

0

Avez-vous essayé de l'appeler avec un CultureInfo neutre?

Vous aimez cette

DateTime parsed; 

if(DateTime.TryParse("2010-03-09", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed)) 
    Console.WriteLine(parsed) 

Ou pour TryParseExact

DateTime.TryParseExact("2010-03-09", "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsed) 
+1

Essayé. Mais n'a pas fonctionné. – Sunil

+0

Pourriez-vous fournir un peu plus d'informations sur la façon dont cela échoue? Idéalement, un échantillon de code. –

0

En italien le jeton de séparateur de temps est résolu à. plutôt que:

Essayez échapper le jeton de séparation de temps entre guillemets simples, par exemple:

"M/d/yyyy h':'mm':'ss tt"