[英]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.