get DateTime.UtcNow.标记早于一天
本文关键字:一天 于一天 DateTime UtcNow get | 更新日期: 2023-09-27 18:22:00
我正在保存具有唯一名称的图像。为了获得唯一的名称,我使用了DateTime.UtcNow.Ticks
。现在我想删除所有超过一天的图像。我怎样才能让蜱虫超过一天?我用记号绘制了时间图。
1:52:14.312 PM - 633614215343125000
1:52:14.359 PM - 633614215343593750
1:52:14.421 PM - 633614215344218750
1:52:14.468 PM - 633614215344687500
1:52:14.515 PM - 633614215998593750
让蜱虫超过一天的最好方法是什么?或者如何获得24小时前的滴答声?
DateTime
有一个以Ticks
为参数的构造函数。从文件名中提取记号,将其解析为long
并创建一个DateTime
类型的对象。稍后您可以选择一天以上的记录。
DateTime dt = new DateTime(633614215998593750);
要选择早于一天的日期,请使用:
if(dt <= DateTime.Now.AddDays(-1))
TimeSpan.TicksPerDay
会给你每天的刻度,所以只需从你当前的刻度中减去它,就可以得到24小时前的刻度,例如:
var ticks24HoursAgo = DateTime.UtcNow.Ticks - TimeSpan.TicksPerDay;
这应该做:
DateTime dt = new DateTime(ticks);
if (DateTime.Now - dt > TimeSpan.FromDays(1))
{
//do something
}
此外,您可以使用UTC而不是本地
每个DateTime对象都有一个Ticks属性,所以只需获得24小时前的时间(在DateTime中添加-1天。现在应该足够了),然后删除所有小于计算时间的值。