46 votes

DateTime anadisation du format de date personnalisée dans .NET

J'ai une chaîne de la forme , il Date et l'heure . Comment assainer une ficelle et obtenir l'objet contenu ?

91voto

Jon Skeet Points 692016

Il commence toujours avec des ORDER?

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

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

Si ce n'est pas toujours commencer par "COMMANDER" puis faire ce que vous devez faire pour obtenir juste la date et l'heure de la partie, et de supprimer "'ORDER'" à partir du modèle de format ci-dessus.

9voto

Giorgi Points 15760

Vous pouvez utiliser la méthode DateTime.ParseExact pour spécifier le format qui doit être utilisé lors de l'analyse.

1voto

Samiksha Points 2182

Si vous n'avez pas une structure fixe de votre ordre de chaîne dire ne sera pas toujours là, alors vous pouvez utiliser regex pour séparer les numéros et les caractères, puis utiliser convertir à la fonction datetime pour les numéros séparés.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X