2

是否有可能以这种格式比较两个日期。例如今天“2013 年 9 月 30 日”和一周前“2013 年 9 月 22 日”,如果它在此范围内,则说“好”,如果较旧,则说“不好” " 我怎样才能在 C# 或 vb.net 中做到这一点

4

4 回答 4

4

如果日期差小于 7 天,则打印“good”,否则打印“Not good”

var ok = (firstDate-secondDate).TotalDays < 7? "good": "Not good";
Console.WriteLine(ok);

TotalDays这样您就double可以检查差异是否为全天,Days如果您想要完成的天数差异,请使用int

阅读有关TimeSpan及其属性的更多信息。

于 2013-09-30T13:10:24.410 回答
0
if(date1 >= Convert.ToDateTime("Sep 22, 2013") && date1 <= Convert.ToDateTime("Sep 30, 2013"))
{
good
}
else
{
bad
}
于 2013-09-30T13:10:41.703 回答
0

您可以使用这个通用Range类来检查一些可比较的值(如 DateTime)是否在范围内:

public class Range<T>
    where T : IComparable
{
    public Range(T from, T to)
    {
        if (from.CompareTo(to) > 0)
            throw new ArgumentException("From should not be greater than To");

        From = from;
        To = to;
    }

    public T From { get; private set; }
    public T To { get; private set; }

    public bool Contains(T value)
    {
        return value.CompareTo(From) >= 0 && value.CompareTo(To) <= 0;
    }
    // other methods like Intersects etc
}

用法:

var today = DateTime.Today;
var range = new Range<DateTime>(today.AddDays(-7), today);
DateTime date = new DateTime(2013, 9, 25);

if (range.Contains(date))
   // say good
于 2013-09-30T13:19:27.053 回答
0

感谢所有在这里帮助我的用户..这是我正在使用的最终代码..

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim fileDate As Date = Convert.ToDateTime("Sep 25, 2013")
    Dim rightNow As Date = Convert.ToDateTime(Date.Now.ToString("MMM dd, yyyy"))
    Dim lastWeek = rightNow.AddDays(-7)

    If rightNow >= fileDate And lastWeek <= fileDate Then

        Debug.Print("its new")
    Else
        Debug.Print("too old")
    End If
End Sub
于 2013-09-30T14:44:39.863 回答