是否有可能比较这种格式的两个日期。 例如今天“2013年9月30日”和一周前“2013年9月22日” 如果它在这个范围内说“好”,如果年纪大了再说“不好” 我怎样才能在C#或vb.net
中做到这一点答案 0 :(得分:4)
如果日期之间的差异小于7天,则会打印“好”,否则“不好”
var ok = (firstDate-secondDate).TotalDays < 7? "good": "Not good";
Console.WriteLine(ok);
TotalDays
为double
,因此您可以检查差异是否为完整天数,如果您希望完成天差为Days
int
详细了解TimeSpan及其属性。
答案 1 :(得分:0)
if(date1 >= Convert.ToDateTime("Sep 22, 2013") && date1 <= Convert.ToDateTime("Sep 30, 2013"))
{
good
}
else
{
bad
}
答案 2 :(得分: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
答案 3 :(得分: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