[C#] 날짜 비교 (Datetime 시간차이 구하기)

|

.NET 에서는 두시간의 차이를 구하는데 사용하는 Timespan이라는 타입을 제공합니다.

사용법은 아래와 같습니다.


DateTime dtPreTime = new DateTime(2015,03,19,12,0,0);
DateTime dtNowTime;

DateTime.TryParse("2015-03-20 12:30:0", out dtNowTime);

TimeSpan timeDiff = dtNowTime - dtPreTime;

int diffDays = timeDiff.Days; //1
int diffHoures = timeDiff.Hours; //0
int diffMiniute = timeDiff.Minutes; //30
int diffSecond = timeDiff.Seconds; //0

double diffTotalHours = timeDiff.TotalHours; //24.5
double diffTotalMiniute = timeDiff.TotalMinutes; //1470.0

위에 소스를 보면 두개의 시간의 차이를 TimeSpan이라는 타입에 저장을 한 후에 Days나 Hours의 메소드를 이용해서

두시간의 날짜나 시간의 차이를 확인이 가능합니다.


여기서 주의할 것은 두 시간이 하루 정도 차이나는데 Hours를 보면 0이라는 값이 나옵니다. 이것은 단순히 시간의 값만 비교하기 

때문에 두시간의 총 시간차이를 구하려면 TotalHours라는 메소드를 이용해야합니다.


TimeSpan을 사용하지 않고 일정시간이 지났는지를 판단하는 것에는 단순히 이전시간에 .AddHours() 또는 .AddMiniute()를 이용해서

시간을 더하거나 빼준후에 비교해도 됩니다.


And