c# 如何取两个日期之间每个月底的日期
时间: 2024-03-10 20:43:31 浏览: 141
你可以使用 C# 中的 `DateTime` 类型和 `AddMonths` 方法来计算两个日期之间每个月底的日期。具体步骤如下:
1. 将开始日期和结束日期转换为 `DateTime` 类型。
```csharp
DateTime startDate = DateTime.Parse("2022-01-01");
DateTime endDate = DateTime.Parse("2022-06-30");
```
2. 循环遍历两个日期之间的每个月份,并计算每个月份的最后一天。
```csharp
List<DateTime> endOfMonthDates = new List<DateTime>();
DateTime tempDate = new DateTime(startDate.Year, startDate.Month, 1);
while (tempDate <= endDate)
{
DateTime endOfMonth = tempDate.AddMonths(1).AddDays(-1);
endOfMonthDates.Add(endOfMonth);
tempDate = tempDate.AddMonths(1);
}
```
3. `endOfMonthDates` 列表中存储了两个日期之间每个月底的日期。
完整代码如下:
```csharp
DateTime startDate = DateTime.Parse("2022-01-01");
DateTime endDate = DateTime.Parse("2022-06-30");
List<DateTime> endOfMonthDates = new List<DateTime>();
DateTime tempDate = new DateTime(startDate.Year, startDate.Month, 1);
while (tempDate <= endDate)
{
DateTime endOfMonth = tempDate.AddMonths(1).AddDays(-1);
endOfMonthDates.Add(endOfMonth);
tempDate = tempDate.AddMonths(1);
}
foreach (DateTime date in endOfMonthDates)
{
Console.WriteLine(date.ToString("yyyy-MM-dd"));
}
```
阅读全文