gpt4 book ai didi

c# - C#查询工作日的方法

转载 作者:太空狗 更新时间:2023-10-30 00:00:20 25 4
gpt4 key购买 nike

我的客户昨天给了我非常不同的要求。

我在服务器上有一个文件夹,每天有数千个文件传来。他要我写一个逻辑来检查文件的日期。如果文件夹中有超过 3 个工作日(周一至周五)的文件,那么他希望我删除这些文件

示例:如果在星期六在文件夹中创建了任何文件,那么该文件应该在星期三删除,因为我们中间有星期六和星期日,不应算作工作日。

我的开发环境是 c# .NET 3.5

我认为我应该编写自定义方法。

请帮帮我。

最佳答案

George Duckett 解决方案适合您。
为了帮助您,我发布了一个示例:

public static class DateExtensions
{
public static bool IsBusinessDay(this DateTime date)
{
return
date.DayOfWeek != DayOfWeek.Saturday &&
date.DayOfWeek != DayOfWeek.Sunday;
}
public static int BusinessDaysTo(this DateTime fromDate, DateTime toDate,
int maxAllowed = 0)
{
int ret = 0;
DateTime dt = fromDate;
while (dt < toDate)
{
if (dt.IsBusinessDay()) ret++;
if (maxAllowed > 0 && ret == maxAllowed) return ret;
dt = dt.AddDays(1);
}
return ret;
}
}

有了这个你可以做这样的事情:

DateTime from = DateTime.Now.AddDays(-8);
int ret = from.BusinessDaysTo(DateTime.Now);
int ret2 = from.BusinessDaysTo(DateTime.Now.AddDays(5), 8);

关于c# - C#查询工作日的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8253671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com