728x90
반응형
WPF & C# - 특정한 날짜 & 요일 & 시간 사이인지 여부 ( day / week / dayofweek ) |
특정날짜 + 특정 시간 인지 여부 - 1회성
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
///// 특정날짜 + 특정시간 사이인지 여부 - 1회성
private void btn01_Click(object sender, RoutedEventArgs e)
{
string dtStr01 = "2022-05-05 22:13:30";
string dtStr02 = "2022-05-05 22:22:00";
btn01.Content = isCurrentTime01(dtStr01, dtStr02);
}
bool isCurrentTime01(string dtStr01, string dtStr02) // 0001-01-01 00:00:00 ~ 9999-12-31 23:59:59
{
DateTime dt01 = DateTime.Parse(dtStr01);
DateTime dt02 = DateTime.Parse(dtStr02);
DateTime dtNow = DateTime.Now;
if (dt01 < dtNow && dtNow < dt02)
{
return true;
}
return false;
}
|
cs |
특정시간 사이인지 여부 - 매일 정해진 시간
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
///// 매일 + 특정시간 사이인지 여부 - 매일 정해진 시간
private void btn02_Click(object sender, RoutedEventArgs e)
{
string dtStr01 = "22:13:30";
string dtStr02 = "22:40:00";
btn02.Content = isCurrentTime02(dtStr01, dtStr02);
}
bool isCurrentTime02(string dtStr01, string dtStr02) // 00:00:00 ~ 23:59:59
{
long ldt01 = long.Parse(dtStr01.Replace(":", ""));
long ldt02 = long.Parse(dtStr02.Replace(":", ""));
long ldtNow = long.Parse(String.Format(DateTime.Now.ToString("HHmmss")));
if (ldt01 < ldtNow && ldtNow < ldt02)
{
return true;
}
return false;
}
|
cs |
특정요일 + 특정시간 사이인지 여부 (일월화수목금토)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 |
///// 특정요일 & 특정시간 사이인지 여부 (일월화수목금토)
private void btn03_Click(object sender, RoutedEventArgs e)
{
string dtStr01 = "22:13:30";
string dtStr02 = "23:40:00";
string strWeeks = "일월금토"; btn03.Content = isCurrentTime03(dtStr01, dtStr02, strWeeks);
}
bool isCurrentTime03(string dtStr01, string dtStr02, string strWeeks) // 00:00:00 ~ 23:59:59
{
long ldt01 = long.Parse(dtStr01.Replace(":", ""));
long ldt02 = long.Parse(dtStr02.Replace(":", ""));
long ldtNow = long.Parse(String.Format(DateTime.Now.ToString("HHmmss")));
string[] arrWeek = { "일", "월", "화", "수", "목", "금", "토" };
int idx = (int)DateTime.Now.DayOfWeek; // 요일을 숫자로 반환
if (strWeeks.IndexOf(arrWeek[idx]) >= 0) // strWeeks 중에 현재 요일이 있는지 확인
{
// 시간 확인
if (ldt01 < ldtNow && ldtNow < ldt02)
{
return true;
}
}
return false;
}
|
cs |
728x90
반응형