c#中的日期格式转换

本文关键字:格式 转换 日期 | 更新日期: 2023-09-27 18:29:59

如何将2013年9月4日8:09:10 PM转换为2013年4月9日(MM-dd-yyyy)。我试着转换,但日期是09,月份是04。

请帮助

[HttpPost]
public string getdailynote(DateTime selectedDate)
//selectedDate gets date as 04/09/2013 8:09:10 PM
{
    string x = selectedDate.ToString("MM-dd-yyy", CultureInfo.InvariantCulture);
    string daily;
    DateTime dt = Convert.ToDateTime(x);
    //dt gets value as {09/04/2013 12:00:00 AM} but 09 as date and 04 as month
    Dnote.RealDate =dt;
    daily = _scheduler.GetDailyNote(Dnote);
    return daily;
}

c#中的日期格式转换

以09为日期,以04为月份

是的,因为你已经说过了,改变

"MM-dd-yyy"

"dd/MM/yyyy h:mm:ss tt"
DateTime.ParseExact("04/09/2013 8:09:10 PM","dd/MM/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);

演示

现在,如果您想将其转换为以下格式的字符串MM-dd-yyyy:

string result = dt.ToString("MM-dd-yyyy", CultureInfo.InvariantCulture);

使用

DateTime.ParseExact(x , "MM-dd-yyy", CultureInfo.InvariantCulture);

当您将DateTime转换为string时,您可以使用实例方法ToString的重载,在其中您可以指定格式字符串,这很好。

但是,当您向另一个方向转换时,不应该使用Convert.ToDateTime方法。请改用DateTime.ParseExactDateTime.TryParseExact,因为使用它们可以再次指定所需的格式字符串(以及格式提供程序(区域性))。