当前日期没有时间

时间:2012-11-01 14:05:34

标签: c#

如何获得当前日期但没有时间?我试图将日期从“dd.mm.yyyy”格式转换为“yyyy-MM-dd”,因为DateTime.Now也返回时间,我得到一个错误(String was not recognized as a valid DateTime。)我尝试做以下事情。

string test = DateTime.ParseExact(DateTime.Now.ToString(), "dd.MM.yyyy", CultureInfo.InvariantCulture).ToString("yyyy-MM-dd");

10 个答案:

答案 0 :(得分:37)

使用Date属性:获取此实例的日期组件。

var dateAndTime = DateTime.Now;
var date = dateAndTime.Date;

变量date包含日期,时间部分为00:00:00。

Console.WriteLine(DateTime.Now.ToString("dd/MM/yyyy"));

DateTime.ToShortDateString Method-

Console.WriteLine(DateTime.Now.ToShortDateString ());

答案 1 :(得分:34)

String test = DateTime.Now.ToString("dd.MM.yyy");

答案 2 :(得分:17)

你试过吗

DateTime.Now.Date

答案 3 :(得分:9)

String test = DateTime.Now.ToShortDateString();

答案 4 :(得分:4)

它应该像

一样简单
DateTime.Today

答案 5 :(得分:2)

这应该有效:

string datetime = DateTime.Today.ToString();

答案 6 :(得分:0)

如已经提供的几个答案中所述,您可以使用ToShorDateString()

DateTime.Now.ToShortDateString();

但是,如果您还想将文化用作参数,则可能会受到一些阻碍。在这种情况下,您可以使用ToString()格式的"d"方法:

DateTime.Now.ToString("d", CultureInfo.GetCultureInfo("en-US"))

答案 7 :(得分:0)

试试这个:

   var mydtn = DateTime.Today;
   var myDt = mydtn.Date;return myDt.ToString("d", CultureInfo.GetCultureInfo("en-US"));

答案 8 :(得分:0)

您可以在没有时间的情况下获取当前的 UTC 日期。

string currentDate = DateTime.UtcNow.ToString("yyyy-MM-dd");

答案 9 :(得分:-1)

如果您需要完整的示例,则应将格式添加到ToString()

    string test = DateTime.ParseExact(DateTime.Now.ToString("dd.MM.yyyy"), "dd.MM.yyyy", CultureInfo.InvariantCulture).ToString("yyyy-MM-dd");

但最好使用直接格式化:

    string test = DateTime.Now.ToString("yyyy-MM-dd")