我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。
06/26/2009 00:00:00:000
我不能使用任何字符串转换方法,因为我需要对象形式的日期。
我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。
我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。
06/26/2009 00:00:00:000
我不能使用任何字符串转换方法,因为我需要对象形式的日期。
我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。
当前回答
最简单的方法是这样的,它只返回日期:
var date = DateTime.Now.ToShortDateString();
其他回答
static void Main(string[] args)
{
string dateStrings = "2014-09-01T03:00:00+00:00" ;
DateTime convertedDate = DateTime.Parse(dateStrings);
Console.WriteLine(" {0} ----------------- {1}",
convertedDate,DateTime.Parse(convertedDate.ToString()).ToString("dd/MM/yyyy"));
Console.Read();
}
在试图解决最初的Q时,偶然发现了这篇文章。
我在用Asp。Net和一些研究之后,我发现当你绑定到代码后面的日期值时,你可以删除时间,这样它就不会显示在屏幕上。
C#:
DateTime Today = DateTime.Now;
aspx:
<%: this.Today.ToShortDateString() %>
这适用于c# 10及以上版本,现在只有DateOnly和TimeOnly格式可用。使用下面的格式,您可以从DateTime格式中提取DateOnly。
DateOnly myDateNoTime = DateOnly.FromDateTime(DateTime.Now);
DateTime。日期
var newDate = DateTime.Now; //newDate.Date property is date portion of DateTime
创建只包含所需属性的结构体。然后使用扩展方法从DateTime实例轻松获取该结构。
public struct DateOnly
{
public int Day { get; set; }
public int Month { get; set; }
public int Year { get; set; }
}
public static class DateOnlyExtensions
{
public static DateOnly GetDateOnly(this DateTime dt)
{
return new DateOnly
{
Day = dt.Day,
Month = dt.Month,
Year = dt.Year
};
}
}
使用
DateTime dt = DateTime.Now;
DateOnly result = dt.GetDateOnly();