我需要从这个只得到了日期,而不是时间:。日返还小时,如何删除?
DateTime.Parse(tr.SelectSingleNode(".//td[@class='full-date']").InnerText.Trim()).Date;
,但我得到这样的结果:
2018年3月24日12:00:00 AM
我怎么能得到的只有:
2018年3月24日
注意,我保存结果的格式如下:
public DateTime Date { get; set; }
我需要从这个只得到了日期,而不是时间:。日返还小时,如何删除?
DateTime.Parse(tr.SelectSingleNode(".//td[@class='full-date']").InnerText.Trim()).Date;
,但我得到这样的结果:
2018年3月24日12:00:00 AM
我怎么能得到的只有:
2018年3月24日
注意,我保存结果的格式如下:
public DateTime Date { get; set; }
请注意,我将结果保存的格式如下:
保存结果DateTime
你不”类型的变量以某种格式保存。只有DateTime
的字符串表示形式具有格式。 DateTime
始终都是,日期和时间(我猜是因此的名称;))
我怎样才能得到:3/24/2018?当您尝试使用ToString方法的此重载得到
DateTime
的字符串表示
这一点就变得很重要:
string string_representation = Date.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);
这个怎么样?
DateTime time = DateTime.Now;
Console.WriteLine(time.ToString("MM/dd/yy"));
您不能从System.DateTime
中删除时间组件。如果您愿意,您可以创建自己的日期表示。或者,你可以用得到的日期字符串,
Date.ToString("MM/dd/yyyy")
考虑使用NodaTime,其中有一个日期没有时间(反之亦然)的概念。
要转换从DateTime
到LocalDate
:
using System;
using NodaTime;
namespace YourApp.Extensions
{
public static class NodaTimeExtensions
{
public static LocalDate ToNodaLocalDate(this DateTime dateTime)
{
return new LocalDate(dateTime.Year, dateTime.Month, dateTime.Day);
}
}
}
你DateTime对象是什么它说,这是'Date' +'时间'...你不能仅使用日期创建日期时间对象,默认情况下它将有时间00:00(24小时制表示法) – EpicKip
我不能只在属性 –
中设置“日期”对象呃,只是让它离开它在00.00这是什么问题?这样,你有整整一天 – EpicKip