将日期mm / dd / yyyy转换为格式的yyyy-mm-dd日期

时间:2013-10-15 09:52:12

标签: c# asp.net datetime format

我正在尝试不格式化ToString()。我需要格式中的日期本身。我不能做字符串 情形:

string str = "02/11/2006";
DateTime dt = new DateTime();
dt = Convert.ToDateTime(str);

现在 dt 的格式为mm/dd/yyyy,但我需要的格式为yyyy-mm-dd 希望我添加一些感觉......嗯!

4 个答案:

答案 0 :(得分:4)

不确定你的意思。如果日期在DateTime变量中,则它是日期的通用表示。如果您希望将其转换回字符串,可以使用以下内容:

        string str = "02/11/2006";
        DateTime dt = new DateTime();
        dt = Convert.ToDateTime(str);

        var date = dt.ToString("yyyy-MM-dd");

答案 1 :(得分:3)

您将DateTime Structure与其字符串演示混淆。

如果您想使用自定义DateTime格式转换字符串,则必须使用DateTime.ParseExact method

dt = DateTime.ParseExact(str ,"mm/dd/yyyy",CultureInfo.InvariantCulture);

如果您想要DaTime的特定字符串演示文稿,则必须使用format string

dt.ToString("yyyy-mm-dd")

答案 2 :(得分:2)

DateTime没有格式(它只是数据)。只有String表示有一个。将其添加到您的代码中:

String newFormatedDate = dt.ToString("yyyy-MM-dd");

答案 3 :(得分:2)

我认为你只需要了解ToString重载:

DateTime newDate = DateTime.ParseExact("15/01/2001", "dd/MM/yyyy", null);

Console.WriteLine(newDate.ToString("yyyy-MM-dd"));