2010-05-21 7 views
3

J'ai une datepicker qui montre la date au format jj/MM/aaaa (je sais que je changerai là-bas mais par le client le veut de cette façon) et dans base de données dans son format MM/jj/aaaa donc je veux convertir de cette façon.changer le format de la date de jj/MM/aaaa à MM/jj/aaaa

par exemple. dans la zone de texte 23/09/2010 et en c sharp son converti en mm/jj/aaaa (txtbo1.text)

Cordialement Indranil.

Répondre

10

Si vous stockez vraiment la date comme une chaîne dans la base de données, vous pouvez convertir le format de chaîne de la manière suivante:

DateTime.ParseExact(dateTimeString, "dd/MM/yyyy", null).ToString("MM/dd/yyyy") 
+0

donc la solution M @ David est mieux. L'analyse peut être faite comme je l'ai dit mais vous n'avez pas besoin de la DateTime comme une chaîne différente (vous n'avez pas besoin de faire ToString()). – brickner

+0

comment faire cela? – piku

+0

DateTime dateTime = DateTime.ParseExact (dateTimeString, "jj/MM/aaaa", null); Maintenant, vous devez prendre ce dateTime et le mettre en paramètre pour la commande SQL. Si vous voulez l'écrire directement dans la chaîne SQL, vous aurez probablement besoin de faire dateTime.ToString ("MM/jj/aaaa"); – brickner

8

Si vous stockez les dates dans une base de données, vous devez les stocker dans un champ avec un type de données approprié. Le format ne devrait pas y entrer. Vous devez analyser votre texte jj/MM/aaaa dans une variable DateTime et le transmettre dans un paramètre d'un type date/heure à votre base de données.

+0

comment faire cela? – piku

0

Utilisation regex:

public static String DMYToMDY(String input) 
    { 
     return Regex.Replace(input, 
     @"\b(?<day>\d{1,2})/(?<month>\d{1,2})/(?<year>\d{2,4})\b", 
     "${month}/${day}/${year}"); 
    } 
1
using System.Globalization; 

string dt = DateTime.Parse(txtDate.Text.Trim()).ToString("MM/dd/yyyy", CultureInfo.InvariantCulture); 

peut également être fait avec ce

public string FormatPostingDate(string str) 
{ 
    if (str != null && str != string.Empty) 
    { 
     DateTime postingDate = Convert.ToDateTime(str); 
     return string.Format("{0:MM/dd/yyyy}", postingDate); 
    } 
    return string.Empty; 
} 
Questions connexes