Programming

C# 지정시간과 현재 시간의 시간차 값 구하기 | 날짜 문자열을 DateTime형으로 변환

DragonTory 2022. 2. 23. 17:59
반응형

현재 시간으로 부터 아이템의 만료 시간까지 남은 시간 혹은 지난 시간 구하기

날짜 관련 하여 C#의 TimeSpan를 사용 하면

기간이 지났는지 얼마 동안인지

몇 초 남았는지 그런 정보를

빠르게 확인 할 수 있다. 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DateTime expiringTime = DateTime.Parse("2022-02-23 12:00:00");
TimeSpan remainingTime = expiringTime - DateTime.Now;
Debug.Log($"{remainingTime.ToString(@"dd'일 'hh'시간 'mm'분 'ss'초'")} 남음");
 
if (remainingTime.TotalSeconds > 0)
{
    Debug.Log("사용 가능");
}
else
{
    Debug.Log("기간 만료");
}
 
remainingTime = (expiringTime - DateTime.Now).Duration();
if (remainingTime.TotalSeconds > 0)
{
 
}
cs

출력

00일 05시간 48분 07초 남음
기간만료

DateTime.Parse를 사용 하여 날짜 문자열을 DateTime 형식으로 자동으로 변경 할 수 있다. 

DateTime.TryParse 나 ParseExact 함수도 있다. 

 

TimeSpan.Duration()을 사용 하면 양수 값만 갖는 기간 값을 얻을 수 있고 

TimeSpan.TotalSeconds 같은 함수를 이용 하면 양수 음수 값을 갖는 값을 구할 수도 있다.

양수: 미래

음수: 과거

 

 

반응형