Analyser une chaîne contenant la date et l’heure dans un format personnalisé

J’ai une chaîne du format suivant "ORDER20100322194007" , où 20100322 est une date et 194007 est une heure. Comment parsingr une chaîne et obtenir l’object DateTime contenu?

Est-ce que ça commence toujours par ORDER ?

 ssortingng pattern = "'ORDER'yyyyMMddHHmmss"; DateTime dt; if (DateTime.TryParseExact(text, pattern, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt)) { // dt is the parsed value } else { // Invalid ssortingng } 

Si la chaîne non valide doit lancer une exception, utilisez DateTime.ParseExact au lieu de DateTime.TryParseExact

Si cela ne commence pas toujours par “ORDER” alors faites tout ce que vous devez pour obtenir juste la partie date et heure, et supprimez “‘ORDER'” du modèle de format ci-dessus.

Vous pouvez utiliser la méthode DateTime.ParseExact pour spécifier le format à utiliser lors de l’parsing.

Si vous ne disposez pas d’une structure fixe de votre chaîne, à savoir que order ne sera pas toujours là, vous pouvez utiliser regex pour séparer les nombres et les caractères, puis utiliser la fonction convert to datetime pour les nombres séparés.