[flutter] 플러터에서 현재 시간과 특정 시간 사이의 차이 계산하기

플러터 앱을 개발하는 도중에 현재 시간과 특정 시간 사이의 차이를 계산해야 하는 경우가 있습니다. 예를 들어, 약속 시간과 현재 시간 사이의 시간 차이를 계산하여 사용자에게 알려주는 기능을 구현할 수 있습니다.

이번 포스트에서는 플러터에서 현재 시간과 특정 시간 사이의 차이를 계산하는 방법을 알아보겠습니다.

현재 시간 구하기

먼저, 현재 시간을 구하는 방법부터 알아보겠습니다. Dart에서는 DateTime 클래스를 사용하여 현재 시간을 얻을 수 있습니다.

DateTime now = DateTime.now();

위의 코드를 사용하면 now 변수에 현재 시간이 저장됩니다.

특정 시간과의 차이 계산하기

특정 시간과 현재 시간 사이의 차이를 계산하려면, 먼저 특정 시간을 DateTime 객체로 변환해야 합니다. 그런 다음 difference 메서드를 사용하여 두 시간의 차이를 계산할 수 있습니다.

DateTime specificTime = DateTime(2023, 10, 20, 15, 30); // 예시로 2023년 10월 20일 15시 30분을 특정 시간으로 설정
Duration difference = specificTime.difference(now);

위의 코드에서는 specificTime 변수에 2023년 10월 20일 15시 30분을 나타내는 시간을 설정하고, difference 변수에 현재 시간과 specificTime 사이의 차이를 저장합니다.

결과 표시하기

마지막으로, 계산된 시간 차이를 사용자에게 표시할 수 있습니다. 이를 위해 Duration 객체에서 일, 시간, 분 등의 정보를 추출하여 사용할 수 있습니다.

int days = difference.inDays;
int hours = difference.inHours.remainder(24);
int minutes = difference.inMinutes.remainder(60);

print('약속까지 남은 시간은 $days$hours 시간 $minutes 분 입니다.');

위 코드에서는 difference 객체에서 남은 일수, 시간, 분을 추출하여 사용자에게 약속까지의 남은 시간을 보여줍니다.

결론

이제 플러터 앱에서 현재 시간과 특정 시간 사이의 차이를 계산하는 방법에 대해 알아보았습니다. 이를 통해 사용자에게 약속 시간까지의 남은 시간을 편리하게 표시할 수 있게 되었습니다.

참고문헌: