在VB
中有一个名为DateDiff()
的函数。但在C#中它不可用。我想要一个函数或C#中的任何代码,它们可以执行与VB中相同的DateDiff函数。
Dim datTim1 As Date = #1/4/2001#
Dim datTim2 As Date = #1/9/2001#
Dim wD As Long = DateDiff(DateInterval.Weekday, datTim1, datTim2)
Dim wY As Long = DateDiff(DateInterval.WeekOfYear, datTim1, datTim2)
我想在C#中执行此操作...
答案 0 :(得分:1)
您可以创建自己的 DateDiff()功能:
public enum Intervals
{
Days,
Months,
Years
}
public static int DateDiff(Intervals eInterval, System.DateTime dtInit, System.DateTime dtEnd)
{
if (dtEnd < dtInit)
throw new ArithmeticException("Init date should be previous to End date.");
switch (eInterval) {
case Intervals.Days:
return (dtEnd.AddDays - dtInit).TotalDays;
case Intervals.Months:
return ((dtEnd.Year - dtInit.Year) * 12) + dtEnd.Month - dtInit.Month;
case Intervals.Years:
return dtEnd.Year - dtInit.Year;
default:
throw new ArgumentException("Incorrect interval code.");
}
}
答案 1 :(得分:0)
Microsoft.VisualBasic
Microsoft.VisualBasic.DateAndTime.DateDiff()
。