繁体   English   中英

没有时间的当前日期

[英]Current date without time

如何获取当前日期但没有时间? 我试图将日期从“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");

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

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

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

要么

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

要么

DateTime.ToShortDateString 方法-

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

你有没有尝试过

DateTime.Now.Date
String test = DateTime.Now.ToShortDateString();

它应该像

DateTime.Today

这应该有效:

string datetime = DateTime.Today.ToString();

正如已经给出的几个答案中提到的,您可以使用ToShorDateString()

DateTime.Now.ToShortDateString();

但是,如果您还想使用文化作为参数,您可能会有点受阻。 在这种情况下,您可以使用具有"d"格式的ToString()方法:

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

试试这个:

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

如果您需要确切的示例,则应向 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")

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM