2010-12-05 4 views

Répondre

0
DateTime.Parse(@"14/04/2010 10:14:49.PM"); 

qui devrait fonctionner, pas près de VS au moment donc je ne peux l'essayer

+0

cela a un format de date/mois ambigu, donc cela ne fonctionnera pas dans certains scénarios – Myster

+0

Je suis d'accord avec Myster. Le comportement dépend des paramètres régionaux. – jdehaan

+0

En supposant que c'est le format correct de DateTimeFormatInfo.CurrentInfo, cela devrait fonctionner. – MerickOWA

1
DateTime.ParseExact(@"14/04/2010 10:14:49.PM", @"dd/MM/yyyy hh:mm:ss"); 
5
var date = DateTime.ParseExact(@"14/04/2010 10:14:49.PM", @"dd/MM/yyyy hh:mm:ss.tt", null); 

Pour une utilisation de représentation de chaîne

date.ToString(@"dd/MM/yyyy hh:mm:ss.tt"); 

vous pouvez également créer la méthode extention comme ceci:

public enum MyDateFormats 
    { 
     FirstFormat, 
     SecondFormat 
    } 

    public static string GetFormattedDate(this DateTime date, MyDateFormats format) 
    { 
     string result = String.Empty; 
     switch(format) 
     { 
      case MyDateFormats.FirstFormat: 
      result = date.ToString("dd/MM/yyyy hh:mm:ss.tt"); 
      break; 
     case MyDateFormats.SecondFormat: 
      result = date.ToString("dd/MM/yyyy"); 
      break; 
     } 

     return result; 
    } 
+1

La représentation de chaîne doit utiliser hh au lieu de HH. Pendant l'analyse, la différence n'est pas très grande mais pour la sortie vous obtiendrez 23h au lieu de 11h (PM) – jdehaan

+0

Oui, vous avez raison, mis à jour. –

+0

Ne compile pas. –

0

Utilisation fonction de conversion

using System; 
using System.IO; 

namespace stackOverflow 
{ 
    class MainClass 
    { 
     public static void Main (string[] args) 
     { 

      Console.WriteLine(Convert.ToDateTime("14/04/2010 10:14:49.PM")); 
      Console.Read(); 

     } 
    } 
} 
+0

C'était erreur de lancement donc je devais analyser l'utilisateur – dotnetrocks

0

Je recommande d'utiliser DateTime.ParseExact comme méthode Parse se comporte un peu différemment en fonction des paramètres actuels de localisation du fil.

DateTime.ParseExact(yourString, 
    "dd/MM/yyyy hh:mm:ss.tt", null) 
3
DateTime result =DateTime.ParseExact(@"14/04/2010 10:14:49.PM", @"dd/MM/yyyy HH:mm:ss.tt",null); 

Vous pouvez maintenant voir le PM ou AM et valeur nulle pour le fournisseur format