gpt4 book ai didi

c# - 在 C# 中计算过去的日期时间

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

我正在使用 C# 中的算法来根据具有以下特征的输入字符串计算过去的日期时间:

该字符串包含一个整数,后跟“D”、“M”或“Y”,例如“1D”或“90M”。

输出将是 DateTime.Now 减去相应的天数、月数或年数。

我遇到的问题是,例如,如果我在 Regex(D、M 或 Y)上切换输入字符串并从 DateTime.Now 中减去相应的 TimeSpan,则新的 TimeSpan() 构造函数不接受月份或几年,只有几天。

if (new Regex(@"[0-9]+D").IsMatch(value))
{
newDate = DateTime.Now - TimeSpan(Int32.Parse(value.Replace("D", "")), 0, 0);
}

如果输入字符串以天为单位,这个逻辑没问题,但是 TimeSpan 的构造函数不接受月或年,如果我假设每个月有 30 天,或者每年有 365 天,那将是非常不准确的。

有没有人想过如何实现这个算法?

谢谢!

最佳答案

DateTimeAddMonths , AddDaysAddYears方法。将它们与减号一起使用以减去

关于c# - 在 C# 中计算过去的日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2359029/

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