DateTime.Analyser jeter format exception
- Je récupérer la date et l'heure des chaînes à partir de xml par l'analyse de XElement.
Les valeurs de date et heure sont récupérées par
file.Element("Date").Value
et file.Element("Time").Value
respectivement.
Après je récupérer la valeur de la Date, je l'analyse à une variable DateTime
DateTime dt,ts;
dt = file.Element("Date").Value; //the value is say 12/29/2012
et puis ce dt valeur est définie pour un datepicker valeur sur l'INTERFACE utilisateur xaml
datepicker.Value = dt;
J'ai aussi un timepicker dont la valeur est à définir par la valeur de Temps (extrait de xml.
Pour définir le timepicker valeur je ne les suivants.
déclarer 3 cordes, dire:
string a = file.Element("Time").Value; //the value is say 9:55 AM
string b = file.Element("Time").Value.Substring(0, 5) + ":00"; //eg 9:55:00
string c = file.Element("Time").Value.Substring(5); //the value is ' AM'
Je puis concaténer la Valeur de Date et chaîne de 'b' et 'c'
string total = file.Element("Date").Value + " " + b + c;
la valeur de total
est maintenant "12/29/2012 9:55:00 AM'
J'ai ensuite essayer d'Analyser ce total
chaîne DateTime, mais il jette un formatexception
DateTime.Parse(total, CultureInfo.InvariantCulture);
Toute aide appréciée...
Avez-vous essayé d'utiliser le CultureInfo.CreateSpecificCulture("en-US") au lieu de CultureInfo.InvariantCulture?
Je suppose que le code est en fait
DateTime.Parse(total, CultureInfo.InvariantCulture);
pas DateTime.Parse("total, CultureInfo.InvariantCulture");
comme dans le post?Je n'ai pas CreateSpecificCulture option pour CultureInfo même si j'ai utilisé le Système.La mondialisation de l'espace de noms. Cependant je l'ai fait essayer ce type DateTime.Parse("total", new CultureInfo("fr-fr")); Elle est encore jeté formatexception erreur
Oui. Le code est de type DateTime.Parse(total, CultureInfo.InvariantCulture);
OriginalL'auteur Siddharth | 2012-12-29
Vous devez vous connecter pour publier un commentaire.
Essayer DateTime.ParseExact
Démo ici.
Lire C# Format DateTime pour le format de la chaîne de détail.
Note que j'ai ajouté un 0 à l'heure de la partie. Il doit être de 2 chiffres autrement format exception se produit.
Pouvez-vous vérifier pour d'espaces supplémentaires? Le format doit être exact.
OriginalL'auteur Tilak
Essayez d'utiliser: DateTime.ParseExact
voir ma réponse mis à jour. Aussi, reportez-vous à msdn.microsoft.com/en-us/library/8kb3ddd4.aspx pour plus de détails.
Il est encore de jeter format exception
format = "jj/MM/aaaa hh:mm:ss tt"
Oui j'ai essayé le format donné par vous, mais encore il est en train de jeter de l'erreur.
OriginalL'auteur Kapil Khandelwal
J'ai la solution pour cela.
Lorsque vous essayez d'enregistrer le datepicker au format XML, j'essayais de sauver la valeur de timepicker comme XMLElement comme ValueString, donc quand il est converti en chaîne de toujours avaient envoyé d'erreur.
Donc je l'ai enregistré au format XML comme Valeur.ToString().
Maintenant, il peut convertir correctement à partir de la Chaîne de Date ou de l'Heure équivalents.
OriginalL'auteur Siddharth