我有一个名为date
的字符串。 date
保留jan 10
之类的日期。我想检查它是否介于两个日期之间。示例jan 10
介于dec 10
和feb 10
之间。我该怎么做这个任务?
答案 0 :(得分:1)
将日期转换为DateTime,然后使用JPLabs extension method Between。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace JpLabs.Extensions
{
public static class ComparableExt
{
static public bool Between<T>(this T actual, T lower, T upper) where T : IComparable<T>
{
return actual.CompareTo(lower) >= 0 && actual.CompareTo(upper) < 0;
}
}
}
我希望它有所帮助。
答案 1 :(得分:0)
和Manish
如果你使用c#
,这应该这样做public bool IsDateBetweenOtherDates(DateTime startDate,DateTime endDate, DateTime testDate)
{
return startDate < testDate && endDate > testDate;
}
答案 2 :(得分:0)
string date = "jan 10";
var dt = DateTime.ParseExact(date, "MMM dd", CultureInfo.InvariantCulture);
if (dt < new DateTime(dt.Year, 12, 10) &&
dt > new DateTime(dt.Year, 2, 10))
{
// the date is between 10 feb and 10 dec.
}
答案 3 :(得分:0)
您需要使用DateTime.TryParse()
将字符串转换为DateTime,然后可以将其与其他日期进行比较。
DateTime minDate = // minimum boundary
DateTime maxDate = // maximum boundary
string input = "January 10, 2010";
DateTime inputDate;
if (DateTime.TryParse(input, out inputDate))
{
if (inputDate > minDate && inputDate < maxDate)
{
...
}
}
答案 4 :(得分:-1)
试试这个:
public bool IsDateBetweenOtherDates(DateTime startDate,DateTime endDate, DateTime testDate)
{
return startDate < testDate && endDate > testDate;
}